用java写一个http 请求 携带json格式的参数
时间: 2024-06-09 20:07:43 浏览: 11
可以使用Java中的HttpURLConnection类来发送HTTP请求,并通过设置请求头来携带JSON格式的参数。下面是一个示例代码:
```java
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class HttpJsonRequest {
public static void main(String[] args) throws IOException {
String url = "http://example.com/api";
String json = "{\"name\":\"John\", \"age\":30}";
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
// 设置请求方法为POST
con.setRequestMethod("POST");
// 设置请求头,指定请求体为JSON格式
con.setRequestProperty("Content-Type", "application/json");
// 向请求体中写入JSON数据
con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(json);
wr.flush();
wr.close();
// 读取响应结果
int responseCode = con.getResponseCode();
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());
}
}
```
在上面的示例中,我们首先指定了请求的URL和JSON数据。然后创建了一个HttpURLConnection对象,并设置请求方法为POST。接着,通过设置请求头指定请求体为JSON格式,并向请求体中写入JSON数据。最后,通过读取响应结果并打印出来。