java调用HTTP协议代码怎么写
时间: 2024-06-10 13:06:34 浏览: 50
您好,以下是Java中调用HTTP协议的代码示例:
1. 使用Java自带的URLConnection类发送GET请求并获取响应:
```
import java.net.URL;
import java.net.URLConnection;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class HttpGetExample {
public static void main(String[] args) {
try {
// 创建一个URL对象并指定要发送请求的地址
URL url = new URL("http://www.example.com/path/to/api");
// 打开URL连接并获取URLConnection对象
URLConnection con = url.openConnection();
// 设置请求头
con.setRequestProperty("User-Agent", "Java/1.8");
// 获取服务器响应的输入流并读取响应数据
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null) {
System.out.println(inputLine);
}
in.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
2. 使用Java中的HttpClient库发送POST请求并获取响应:
```
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
public class HttpPostExample {
public static void main(String[] args) {
try {
// 创建一个HttpClient对象
CloseableHttpClient httpclient = HttpClients.createDefault();
// 创建一个HttpPost对象并指定要发送请求的地址
HttpPost httpPost = new HttpPost("http://www.example.com/path/to/api");
// 设置请求头
httpPost.setHeader("User-Agent", "Java/1.8");
// 设置请求体
StringEntity entity = new StringEntity("{\"key1\":\"value1\",\"key2\":\"value2\"}");
httpPost.setEntity(entity);
// 发送POST请求并获取响应
CloseableHttpResponse response = httpclient.execute(httpPost);
// 获取响应体并转换为字符串
HttpEntity responseEntity = response.getEntity();
String responseString = EntityUtils.toString(responseEntity);
// 打印响应结果
System.out.println(responseString);
// 关闭连接
response.close();
httpclient.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
希望能够帮助到您!