import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
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;
import java.io.IOException;
public class HttpClientExample {
public static void main(String[] args) {
CloseableHttpClient httpClient = HttpClients.createDefault();
HttpGet httpGet = new HttpGet("http://example.com");
// 设置复杂的HTTP请求头,例如自定义认证信息
httpGet.setHeader("Authorization", "Bearer your_token");
httpGet.setHeader("Custom-Header", "custom_value");
try {
HttpResponse response = httpClient.execute(httpGet);
int statusCode = response.getStatusLine().getStatusCode();
// 根据不同的HTTP状态码进行针对性处理
if (statusCode == 200) {
String responseBody = EntityUtils.toString(response.getEntity());
System.out.println("成功响应: " + responseBody);
} else if (statusCode == 401) {
System.out.println("未授权,请检查认证信息");
} else if (statusCode == 404) {
System.out.println("资源未找到");
} else {
System.out.println("其他状态码: " + statusCode);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
httpClient.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}