httppost请求json并处理返回结果respone数据 用的是httpclient-4.3.5.jar和httpcore-4.3.3.
package com;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.json.JSONObject;
import java.io.IOException;
public class WebTest {
public static void main(String[] args) {
String ret = “”;
String url = “https://api.exexm.com:800/api/dataexchange/user”;
try {
JSONObject object = new JSONObject();
object.put(“key”, 1);
object.put(“access_token”, “{0}”);
String data = object.toString();
CloseableHttpClient httpclient = HttpClients.createDefault();
HttpPost httpPost = new HttpPost(url);
// 解决中文乱码问题
StringEntity stringEntity = new StringEntity(data, "UTF-8");
stringEntity.setContentEncoding("UTF-8");
httpPost.setEntity(stringEntity);
ResponseHandler<String> responseHandler = new ResponseHandler<String>() {
@Override
public String handleResponse(final HttpResponse response)
throws ClientProtocolException, IOException {//
int status = response.getStatusLine().getStatusCode();
if (status >= 200 && status < 300) {
HttpEntity entity = response.getEntity();
return entity != null ? EntityUtils.toString(entity) : null;
} else {
throw new ClientProtocolException(
"Unexpected response status: " + status);
}
}
};
ret = httpclient.execute(httpPost, responseHandler);
System.out.print(ret);
} catch (Exception e) {
e.printStackTrace();
}
}
}
上一篇: Nginx部署时发现的问题
下一篇: 本地写json数据并在页面中调用