用httpPost对JSON发送和接收
Posted Programming is an art
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用httpPost对JSON发送和接收相关的知识,希望对你有一定的参考价值。
HTTPPost发送JSON:
1 private static final String APPLICATION_JSON = "application/json"; 2 3 private static final String CONTENT_TYPE_TEXT_JSON = "text/json"; 4 5 public static void httpPostWithJSON(String url, String json) throws Exception { 6 // 将JSON进行UTF-8编码,以便传输中文 7 String encoderJson = URLEncoder.encode(json, HTTP.UTF_8); 8 9 DefaultHttpClient httpClient = new DefaultHttpClient(); 10 HttpPost httpPost = new HttpPost(url); 11 httpPost.addHeader(HTTP.CONTENT_TYPE, APPLICATION_JSON); 12 13 StringEntity se = new StringEntity(encoderJson); 14 se.setContentType(CONTENT_TYPE_TEXT_JSON); 15 se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, APPLICATION_JSON)); 16 httpPost.setEntity(se); 17 httpClient.execute(httpPost); 18 }
接收HTTPPost中的JSON:
1 public static String receivePost(HttpServletRequest request) throws IOException, UnsupportedEncodingException { 2 3 // 读取请求内容 4 BufferedReader br = new BufferedReader(new InputStreamReader(request.getInputStream())); 5 String line = null; 6 StringBuilder sb = new StringBuilder(); 7 while((line = br.readLine())!=null){ 8 sb.append(line); 9 } 10 11 // 将资料解码 12 String reqBody = sb.toString(); 13 return URLDecoder.decode(reqBody, HTTP.UTF_8); 14 }
以上是关于用httpPost对JSON发送和接收的主要内容,如果未能解决你的问题,请参考以下文章
HttpPost发送字符串到服务器,服务器接收代码并显示怎么写Java代码?
Javascript - 使用 HTML 片段通过电子邮件发送 JSON 输出
ASP.NET Core 3.1 Web Api HttpPost Action 参数无法接收 axios application/json HttpPost 传递数据