Java http get请求比postman get请求慢

时间:2017-07-23 18:03:24

标签: java postman get-request

我正在尝试发送获取请求以获取网站内容。 当我使用Postman时大约需要70-100毫秒,但是当我使用以下代码时:

String getUrl = "someUrl";

URL obj = new URL(getUrl);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();

// optional default is GET
con.setRequestMethod("GET");

//add request header
con.setRequestProperty("User-Agent", "Mozilla/5.0");
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null)
{
    response.append(inputLine);
}
in.close();

response.toString();

大约需要3-4秒。

知道如何让我的代码像Postman一样快速地工作吗?

感谢。

2 个答案:

答案 0 :(得分:0)

尝试找到while循环的变通方法。也许这是你的瓶颈。你甚至从你的URL获得了什么? Json对象还是别的什么?

答案 1 :(得分:0)

尝试在apache http api上构建http-request

HttpRequest<String> httpRequest = HttpRequestBuilder.createGet(someUri, String.class)
    .responseDeserializer(ResponseDeserializer.ignorableDeserializer())
    .addDefaultHeader("User-Agent", "Mozilla/5.0")
    .build();

public void send(){
   String response = httpRequest.execute().get();
}

我在使用前建议阅读文档。

相关问题