【发布时间】:2014-03-14 15:28:55
【问题描述】:
我在一些示例代码中使用Apache's HttpClient Fluent Facade in Java 供开发人员扩展。他们真的很喜欢流畅的外观,它可以调用:
this.body = Request.Get(uri.build()).execute().returnContent().asString();
另外,我可以通过调用来获取状态码:
this.statusCode = Request.Get(uri.build()).execute().returnResponse().getStatusLine().getStatusCode();
不幸的是,在某些情况下,除了正文之外,我还需要状态码。基于this question,我看到我可以让他们学习 HttpClient 对象-
HttpResponse response = client.execute(httpGet);
String body = handler.handleResponse(response);
int code = response.getStatusLine().getStatusCode();
但是,这意味着初始化 HttpClient 对象并看似拒绝 Fluent 接口和 Request.Get(或 Post)语法。有没有办法在不丢失 Fluent 语法且不进行两次离散调用的情况下同时获取状态代码和正文 ?
【问题讨论】:
-
我已将此添加到项目的 jira 板上 issues.apache.org/jira/browse/HTTPCLIENT-1581
标签: java apache-httpclient-4.x fluent