httpclient get/post请求

本文提供了一个使用Java实现的HTTP GET与POST请求的例子。其中包括如何设置POST请求的JSON实体,解决中文乱码问题,并获取服务器响应内容;GET请求则展示了如何检查网络连接状态并返回状态码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

public static String httpPost(String url, JSONObject json) {
String respContent = null;
try{
HttpPost httpPost = new HttpPost(url);
CloseableHttpClient client = HttpClients.createDefault();

// json方式
StringEntity entity = new StringEntity(json.toString(), "utf-8");// 解决中文乱码问题
entity.setContentEncoding("UTF-8");
entity.setContentType("application/json");
httpPost.setEntity(entity);
System.out.println();
HttpResponse resp = client.execute(httpPost);
if (resp.getStatusLine().getStatusCode() == 200) {
HttpEntity he = resp.getEntity();
respContent = EntityUtils.toString(he, "UTF-8");
}
}catch (Exception ex) {
// TODO: handle exception
respContent=null;
}finally {
return respContent;
}
}

/**
* @param url
* 要请求的地址
* @return 状态码
* @throws IOException
* @throws ClientProtocolException
*/
public static String httpGet(String url) {
String urlNameString = url;
String status = null;
try {
// 根据地址获取请求
HttpGet request = new HttpGet(urlNameString);// 这里发送get请求
request.getParams().setParameter(HttpMethodParams.SO_TIMEOUT,3000 );
// 获取当前客户端对象
HttpClient httpClient = new DefaultHttpClient();
// 通过请求对象获取响应对象
HttpResponse response;
response = httpClient.execute(request);
// 判断网络连接状态码是否正常(0--200都数正常)
if (response.getStatusLine().getStatusCode() == 200) {
status = "200";
}
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
log.error(e);
}
finally {
return status;
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值