调用接口时返回乱码或者XML格式的类型,如何返回json类型

167 阅读1分钟

问题描述:

发送验证码服务,服务调用时返回:

 <Map>   
    <data>     
        <status>0</status>     
        <message>success</message>     
        <data>         
            <id>420201223fcd2a1332b027026b0d7bde14d4cfae3791322381925744640</id>  
            <appSmsId>f574e13cc6d6427197ac520d59b84282</appSmsId>     
        </data>   
    </data>   
    <success>true</success> 
</Map>

但解析时用json解析的,而返回xml,所以导致报错

解决办法

在上游接口处加上produces:

 @RequestMapping(value="/send",produces = MediaType.APPLICATION_JSON_UTF8_VALUE) 

补充

@RequestMapping什么时候用produces ,什么时候用consumes

produces:它的作用是指定返回值类型,不但可以设置返回值类型还可以设定返回值的字符编码;

consumes: 指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;