springboot 调用外部接口方法

引入pom文件

XML 复制代码
<dependency>
    <groupId>com.squareup.okhttp3</groupId>
    <artifactId>okhttp</artifactId>
    <version>4.9.1</version>
</dependency>

请求方法get

java 复制代码
@RestController
public class WeatherController {

    @GetMapping("/weather")
    public String getWeather(@RequestParam("city") String city) {
        OkHttpClient client = new OkHttpClient();
        Request request = new Request.Builder()
                .url("https://*****")
                .build();

        try (Response response = client.newCall(request).execute()) {
            if (response.isSuccessful()) {
                return response.body().string();
            } else {
                return "Failed to get weather data";
            }
        } catch (IOException e) {
            return "Error: " + e.getMessage();
        }
    }
}

post请求

java 复制代码
import okhttp3.*;

import java.io.IOException;

public class Example {
    public static void main(String[] args) {
        OkHttpClient client = new OkHttpClient();

        // 构造请求体
        RequestBody requestBody = new FormBody.Builder()
                .add("username", "admin")
                .add("password", "password")
                .build();

        // 构造请求对象
        Request request = new Request.Builder()
                .url("http://example.com/api/login")
                .post(requestBody)
                .build();

        try (Response response = client.newCall(request).execute()) {
            if (response.isSuccessful()) {
                // 处理响应数据
                System.out.println(response.body().string());
            } else {
                System.out.println("请求失败");
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
相关推荐
matlabgoodboy4 分钟前
Python代做java代码编写C++大数据R语言Hadoop/spark/flink/C语言
java·大数据·python
实心儿儿10 分钟前
C++ —— 红黑树
java·开发语言·算法
啥都想学点27 分钟前
第18天:Springboot 项目搭建
java·spring boot·后端
Fang fan28 分钟前
Java集合
java·开发语言·算法
福运常在38 分钟前
股票数据API(21)如何获取股票指数最新分时交易数据
java·python·maven
计算机徐师兄43 分钟前
Java基于微信小程序的青少年科普教学系统【附源码、文档说明】
java·微信小程序·青少年科普教学系统小程序·java青少年科普教学小程序·青少年科普教学微信小程序·青少年科普教学小程序·科普教学微信小程序
东离与糖宝1 小时前
面试官直言:Java应届生面试,我只看这3个核心能力
java·面试
逸Y 仙X1 小时前
文章十三:ElasticSearch数据更新实战
java·大数据·elasticsearch·搜索引擎·jenkins
说给风听.1 小时前
从零学会 Java 异常处理 —— 核心语法、自定义异常与面试指南
java·开发语言·面试
身如柳絮随风扬1 小时前
Java JDBC 从入门到进阶
java·开发语言