![]()
private static final String APPLICATION_JSON = "application/json";
![]()
private static final String CONTENT_TYPE_TEXT_JSON = "text/json";
![]()
![]()
public static void httpPostWithJSON(String url, String json) throws Exception {
![]()
// 将JSON进行UTF-8编码,以便传输中文
![]()
String encoderJson = URLEncoder.encode(json, HTTP.UTF_8);
![]()
DefaultHttpClient httpClient = new DefaultHttpClient();
![]()
HttpPost httpPost = new HttpPost(url);
![]()
httpPost.addHeader(HTTP.CONTENT_TYPE, APPLICATION_JSON);
![]()
StringEntity se = new StringEntity(encoderJson);
![]()
se.setContentType(CONTENT_TYPE_TEXT_JSON);
![]()
se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, APPLICATION_JSON));
![]()
httpPost.setEntity(se);
![]()
httpClient.execute(httpPost);
![]()
}
接收HTTPPost中的JSON:
![]()
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);
![]()
}