1,客户端
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("1", "bb");
map.put("2", "cc你好,接收到了没");
map.put("3", "dd");
JSONObject jsonObject = JSONObject.fromObject(map);
post(jsonObject, "url");
}
/**
* post方式提交推送数据
* @param request
* @return
*/
public static String post(JSONObject json,String url) {
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost(url);
post.addHeader("Content-type","application/json; charset=utf-8");
post.setHeader("Accept", "application/json");
//post.setEntity(new StringEntity(json.toString(), Charset.forName("UTF-8")));
//post.addHeader("Authorization", "Basic YWRtaW46");
String result = "";
try {
StringEntity s = new StringEntity(json.toString(), "UTF-8");
s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,"application/json"));
post.setEntity(s);
// 发送请求
HttpResponse httpResponse = client.execute(post);
// 获取响应输入流
InputStream inStream = httpResponse.getEntity().getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(inStream, "UTF-8"));
StringBuilder strber = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null)
strber.append(line + "\n");
inStream.close();
result = strber.toString();
System.out.println(result);
if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
System.out.println("请求服务器成功,做相应处理");
} else {
System.out.println("请求服务端失败");
}
} catch (Exception e) {
System.out.println("请求异常");
throw new RuntimeException(e);
}
return result;
}
2.接收数据
//test接收数据
@RequestMapping("test")
@ResponseBody
public Map<String, String> test(HttpServletRequest request) throws IOException{
System.out.println("jinru=================");
//后台接收
request.setCharacterEncoding("UTF-8");
BufferedReader br = new BufferedReader(new InputStreamReader(request.getInputStream(),"UTF-8"));
String line = null;
StringBuilder sb = new StringBuilder();
while((line = br.readLine())!=null){
sb.append(line);
}
// 将资料解码
String reqBody = sb.toString();
System.out.println("reqBody==="+reqBody);
return null;
}