Invalid mime type “application/json; utf-8=“: ‘value‘ must not be empty解决方法
在HttpMessageConverterExtractor的getContentType方法中,可以看到。在getFirst方法中,是直接调用了headers.getFirst方法,headers的定义。那这样就可以找到解决的方法了,直接在请求的header中调用setContentType方法即可。这是一个很老的调用了,2018年的代码,忽然报这个错,很奇怪。网上找了一下,没找到有遇到这个问题
·
遇到一个很奇怪的问题
org.springframework.http.InvalidMediaTypeException: Invalid mime type "application/json; utf-8=": 'value' must not be empty
at org.springframework.http.MediaType.parseMediaType(MediaType.java:586)
at org.springframework.http.HttpHeaders.getContentType(HttpHeaders.java:967)
at org.springframework.web.client.HttpMessageConverterExtractor.getContentType(HttpMessageConverterExtractor.java:136)
at org.springframework.web.client.HttpMessageConverterExtractor.extractData(HttpMessageConverterExtractor.java:93)
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:741)
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:674)
at org.springframework.web.client.RestTemplate.postForObject(RestTemplate.java:418)
调用的地方是
response = restTemplate.postForObject(url, httpEntity, Xxx.class);
这是一个很老的调用了,2018年的代码,忽然报这个错,很奇怪。
网上找了一下,没找到有遇到这个问题的,就只能根据日志解决了。
看源码可以看到是这个方法调用的时候出错
是以下地方调用的
可以看到应该是在getFirst中未取到值造成的。
在getFirst方法中,是直接调用了headers.getFirst方法,headers的定义
到这已经看不出太大问题了,就继续向上找吧。
在HttpMessageConverterExtractor的getContentType方法中,可以看到
那这样就可以找到解决的方法了,直接在请求的header中调用setContentType方法即可
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
这样在调用的时候就可以直接取到了。
更多推荐
已为社区贡献2条内容
所有评论(0)