81,090
社区成员
发帖
与我相关
我的任务
分享
String paras = "XXXXXX";
WechatPushMessage wechatPushMessage = new WechatPushMessage();
wechatPushMessage.setToInUser("85027490");
wechatPushMessage.setContent("测试发送消息");
RestTemplate restTemplate = new RestTemplate();
// restTemplate.getMessageConverters().set(1, new StringHttpMessageConverter(StandardCharsets.UTF_8));
restTemplate.getMessageConverters().set(1, new StringHttpMessageConverter(Charset.forName("GBK")));
String url = "http://XXXXX";
HttpHeaders headers = new HttpHeaders();
MediaType type = MediaType.parseMediaType("application/json; charset=UTF-8");
headers.setContentType(type);
headers.add("Accept", MediaType.APPLICATION_JSON.toString());
JSONObject jsonObj = JSONObject.parseObject(paras);
HttpEntity<String> formEntity = new HttpEntity<String>(jsonObj.toString(), headers);
String result = restTemplate.postForObject(url, formEntity, String.class);
看楼上一个赞都没有 就说明 都没有解决String body = new String(result.getBytes(Charset.forName("utf-16"))); 这个就能拿到数据了
org.springframework.web.filter.CharacterEncodingFilter
若你用spingboot默认好像都是开启的
Apache Tomcat 8 Configuration Reference
org.eclipse.jetty.util.UrlEncoding.charset