gpt4 book ai didi

java - Java 中的 HTTP 编程?

转载 作者:行者123 更新时间:2023-12-01 17:29:21 26 4
gpt4 key购买 nike

我想用Java创建一个基于URL的http请求并更改它的一些 header 或添加新的 header ;然后,接收该请求相应的 http 响应并获取其 header 值及其内容。我怎样才能尽可能简单地做到这一点?

最佳答案

确实使用 apache httpclient 4.x 并使用 ResponseHandler。

HttpClient 有很多你可能想要的原始 Java API 不提供的好东西,例如多线程使用、连接池、对各种身份验证机制的支持等。

下面是一个简单的示例,它执行 get 并以字符串形式返回正文。

import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;

...

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://www.google.com");
httpGet.addHeader("MyHeader", "MyValue");

try {
String body = httpClient.execute(httpGet, new ResponseHandler<String>() {

@Override
public String handleResponse(HttpResponse response) throws IOException {
Header firstHeader = response.getFirstHeader("MyHeader");
String headerValue = firstHeader.getValue();
return EntityUtils.toString(response.getEntity());
}
});
} catch (IOException e) {
e.printStackTrace();
}

关于java - Java 中的 HTTP 编程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12551465/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com