HttpClient处理
HttpClient httpClientpost = new DefaultHttpClient();
String Posturl="xxx";
HttpPost httpPost = new HttpPost(Posturl);
RequestConfig ReqConfig = RequestConfig.custom().setConnectTimeout(1000) //连接超时时间
.setConnectionRequestTimeout(1000) //从连接池中取的连接的最长时间
.setSocketTimeout(3 *1000) //数据传输的超时时间
.setStaleConnectionCheckEnabled(true) //提交请求前测试连接是否可用
.build();
httpPost.setConfig(ReqConfig);
httpPost.setHeader("Content-Type", "application/json;charset=UTF-8");
httpPost.setEntity(new StringEntity(content, Charset.forName("utf-8")));
try {
HttpResponse postResponse = httpClientpost.execute(httpPost);
HttpEntity entity = postResponse.getEntity();
InputStream in = entity.getContent();
ByteArrayOutputStream bos = new ByteArrayOutputStream();
// 读取缓存
byte[] buffer = new byte[2048];
int length = 0;
while ((length = in.read(buffer)) != -1) {
// 写入输出流
bos.write(buffer, 0, length);
}
// 读取完毕,关闭输入流
in.close();
jsonStr = new String(bos.toByteArray(), "UTF-8");
} catch (ClientProtocolException e1) {
String message = e1.getMessage();
e1.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
本文介绍如何使用 HttpClient 发起 POST 请求并处理响应数据。通过设置连接超时时间、数据传输超时时间等参数来优化网络请求,并展示了如何设置 Content-Type 和发送 JSON 数据。此外,还详细解释了如何读取和解析响应内容。
765

被折叠的 条评论
为什么被折叠?



