用httpPost对JSON发送和接收的例子

xiaoxiao2021-02-28  81

HTTPPost发送JSON:

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, "utf-8"); DefaultHttpClient httpClient = new DefaultHttpClient(); HttpPost httpPost = new HttpPost(url); httpPost.addHeader(HTTP.CONTENT_TYPE, APPLICATION_JSON); StringEntity se = new StringEntity(encoderJson); // StringEntity se = new StringEntity(json, "utf-8"); se.setContentType(CONTENT_TYPE_TEXT_JSON); se.setContentEncoding("utf-8"); // 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); }
转载请注明原文地址: https://www.6miu.com/read-29463.html

最新回复(0)