-1

我正在使用 http 客户端的 Apache 客户端库将一些数据发布到我的服务器。

下面是代码,我得到状态行响应,但我没有得到内容。但是在wireshark上,我可以看到服务器响应的内容很少,例如内容类型、位置等,对于我的代码,我得到以下输出。

Status :: HTTP/1.1 201 Created Content null

请帮助我找出我在阅读内容时出错的地方,我需要一些与代理相关的设置吗?

HttpClient client = new DefaultHttpClient();
String line = "";      String status = "";
HttpPost post = new HttpPost("http://127.0.0.1/msg");
try {

  HttpEntity e = new StringEntity("POSTING TO SERVER FOR TESTING");
  post.setEntity(e);


  HttpResponse response = client.execute(post);
  BufferedReader rd = new BufferedReader(new
  InputStreamReader(response.getEntity().getContent()));
  status = response.getStatusLine().toString() ;
  while ((line = rd.readLine()) != null) {
    System.out.println(line);
  }

} catch (IOException e) {
  e.printStackTrace();
}

System.out.println(" Status :: "+ status + " Content " + line);
4

1 回答 1

2

的原因Status :: HTTP/1.1 201 Created Content null是因为分配给的最后一个值linenull(这是您跳出循环的方式)。响应可能没有任何内容。您可以根据需要使用 API 检查标头

看看如何获​​取标题?(java,httpclient 4.X)举个例子

于 2013-11-08T07:06:01.337 回答