HttpClient 客户端服务端之间JSON通信实例

转载:http://www.blogjava.net/duansky/archive/2012/03/18/372137.html

HttpClient这个东西还是要好好研究一下的。

客户端请求代码:

try{
	String requestStr = "JSON格式字符串";
	CloseableHttpClient httpclient = HttpClients.createDefault();

	HttpPost httpPost = new HttpPost("http://127.0.0.1:8080/plan/sys/sversion.html");
	httpPost.setEntity(new StringEntity(requestStr, ContentType.create("application/json", Consts.UTF_8)));

	HttpResponse response = httpclient.execute(httpPost);
	int code = response.getStatusLine().getStatusCode();
	if (code != HttpStatus.SC_OK) {
		throw new HttpResponseException(code, "响应异常");
	}

	HttpEntity entity = response.getEntity();
	if (entity != null)
		System.out.println(EntityUtils.toString(entity, "UTF-8"));
}catch(Exception e){
	e.printStackTrace();
}

服务端接收请求代码:

public static String receivePost(HttpServletRequest request) throws IOException, UnsupportedEncodingException {
	// 读取请求内容
	BufferedReader br = new BufferedReader(new InputStreamReader(request.getInputStream()));
	String line = null;
	StringBuilder sb = new StringBuilder();
	while((line = br.readLine())!=null){
	    sb.append(line);
	}

	// 将资料解码
	String reqBody = sb.toString();
	return URLDecoder.decode(reqBody, HTTP.UTF_8);
}

猜你喜欢

转载自tom-seed.iteye.com/blog/2237321