欢迎使用CSDN-markdown编辑器

来源:互联网 发布:招商银行 知乎 编辑:程序博客网 时间:2024/05/22 02:11

RestTemplate

代码块

java 代码:

请求body的乱码问题RestTemplate restTemplate = new RestTemplate();StringHttpMessageConverter converter = new StringHttpMessageConverter(StandardCharsets.UTF_8);List<HttpMessageConverter<?>> messageConverters = restTemplate.getMessageConverters();messageConverters.clear();messageConverters.add(converter);restTemplate.setMessageConverters(messageConverters);for (int i = 0; i < messageConverters.size(); i++) {    HttpMessageConverter<?> httpMessageConverter = messageConverters.get(i);    if (messageConverters.get(i) instanceof StringHttpMessageConverter){        messageConverters.remove(i);        messageConverters.add(i,converter);    }}下面是key value 这样定义MultiValueMap<String, String>不会乱码MultiValueMap<String, String> map = new LinkedMultiValueMap<>();map.add("name","张三");map.add("age","22");String forObject = restTemplate.postForObject(uri,map,String.class);如果向下面定义Map<String,Object> 类型为Object,中文参数就会乱码MultiValueMap<String, Object> map = new LinkedMultiValueMap<>();map.add("name","张三");map.add("age","22");controller的方法代码 @RequestMapping(value = "/",method = RequestMethod.POST)    public Person test(Person person)         return person;    }
0 0
原创粉丝点击