java中如何发送http请求
时间: 2024-09-25 19:03:14 浏览: 33
在Java中,发送HTTP请求常用的是Apache HttpClient库,这是一个功能强大的客户端工具,也可以选择使用更现代的像OkHttp、Spring的RestTemplate或者是最近流行的JAX-RS(如Jersey或Resteasy)。以下是使用HttpClient发送GET请求的一个简单示例:
```java
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
public class HttpRequestExample {
public static void main(String[] args) throws Exception {
CloseableHttpClient httpClient = HttpClients.createDefault();
try {
// 创建HttpGet请求
HttpGet httpGet = new HttpGet("http://example.com/api/data");
// 发送请求并获取响应
HttpResponse response = httpClient.execute(httpGet);
int statusCode = response.getStatusLine().getStatusCode();
if (statusCode == 200) { // 如果状态码表示成功
String responseBody = EntityUtils.toString(response.getEntity(), "UTF-8");
System.out.println("Response: " + responseBody);
} else {
System.out.println("Error: HTTP status code " + statusCode);
}
} finally {
httpClient.close(); // 关闭连接
}
}
}
```
在这个例子中,我们首先创建了一个`HttpGet`对象,指定我们要访问的URL。然后通过`execute()`方法发送请求,并检查响应的状态码。如果状态码为200,我们就读取响应体的内容。
阅读全文