spring boot POST请求时,JSON 请求参数绑定对象失败 报400 JsonParseExcept
(2017-11-13 16:52:33)
今天在用postman测试时,发现一个问题,我一个post方法,在加上签名字段时(因为签名字段的字符串长度特别长),会报404,请求出现异常:
org.codehaus.jackson.JsonParseException:
Illegal unquoted character ((CTRL-CHAR, code 9)): has to be escaped
using backslash to be included in string
value
at [SxxxTrade: 字段名],原来是因为json里面有些字段包括空格,反斜杠等,如果框架没有对这些json进行转化后来看了下是,解决办法就是:
at [SxxxTrade: 字段名],原来是因为json里面有些字段包括空格,反斜杠等,如果框架没有对这些json进行转化后来看了下是,解决办法就是:
pom.xml中引入fastjson的jar包,再添加一个适配器:
import
java.util.List;
import
org.springframework.boot.autoconfigure.SpringBootApplication;import
org.springframework.http.converter.HttpMessageConverter;import
org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import
com.alibaba.fastjson.serializer.SerializerFeature;import
com.alibaba.fastjson.support.config.FastJsonConfig;import
com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter ;
@SpringBootApplication
public class JsonController extends WebMvcConfigurerAdapter {
@Override public void configureMessageConverters(List>
converters) { super .configureMessageConverters (converters);
FastJsonHttpMessageConverter
fastConverter = new
FastJsonHttpMessageConverter() ;
FastJsonConfig
fastJsonConfig = new FastJsonConfig();
fastJsonConfig.setSerializerFeatures(
SerializerFeature.PrettyFormat
);
fastConverter.setFastJsonConfig(fastJsonConfig);
converters.add(fastConverter);
} }
,以上解决方案参照了:http://blog.csdn.net/f429629227/article/details/74506212