要调用第三方接口传递 JSON,可以使用 Java 的 HttpURLConnection 类或 Apache HttpClient 类。以下是使用 HttpURLConnection 类的示例代码:

import java.net.HttpURLConnection;
import java.net.URL;
import java.io.*;

public class ApiCall {
    public static void main(String[] args) throws Exception {
        String url = "http://example.com/api";
        URL obj = new URL(url);
        HttpURLConnection con = (HttpURLConnection) obj.openConnection();

        // 设置请求方法和请求头
        con.setRequestMethod("POST");
        con.setRequestProperty("Content-Type", "application/json; charset=UTF-8");

        // 构造 JSON 请求体
        String jsonBody = "{\"key1\":\"value1\",\"key2\":\"value2\"}";

        // 发送请求
        con.setDoOutput(true);
        OutputStreamWriter wr = new OutputStreamWriter(con.getOutputStream());
        wr.write(jsonBody);
        wr.flush();
        wr.close();

        // 读取响应
        BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
        String inputLine;
        StringBuffer response = new StringBuffer();
        while ((inputLine = in.readLine()) != null) {
            response.append(inputLine);
        }
        in.close();

        // 打印响应结果
        System.out.println(response.toString());
    }
}

这个示例代码使用 POST 方法向 http://example.com/api 发送一个 JSON 请求体,响应体将被读取并打印到控制台上。要修改为自己的接口和 JSON 请求体,只需要修改 url 和 jsonBody 变量的值即可。

另外,如果你的项目中已经使用了 Spring Framework,可以使用 RestTemplate 类来发送 HTTP 请求和接收响应。以下是使用 RestTemplate 类的示例代码:

import org.springframework.web.client.RestTemplate;

public class ApiCall {
    public static void main(String[] args) {
        String url = "http://example.com/api";
        String jsonBody = "{\"key1\":\"value1\",\"key2\":\"value2\"}";

        RestTemplate restTemplate = new RestTemplate();
        String response = restTemplate.postForObject(url, jsonBody, String.class);

        System.out.println(response);
    }
}

这个示例代码与上一个示例代码的功能相同,但使用了 RestTemplate 类来发送请求和接收响应。要修改为自己的接口和 JSON 请求体,只需要修改 url 和 jsonBody 变量的值即可

JAVA 调用第三方接口传递json

原文地址: https://www.cveoy.top/t/topic/hixd 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录