开发者社区> 问答> 正文

spring mvc的post请求接收@RequestBody的数据的问题 400 请求出错 

由于业务的要求,在controller中定义了一个post的请求外部系统向它来请求,然后controller中定义的方法是接收请求终端数据,但是发现接收到的数据格式不对,都把<>这样的标签显示成了如下:

%3Capi%3E%3Capi%3E%3Cuserid%3E004628%3C%2F

请求方发送的数据是这样的。

<api>
    <api>
        <userid>004628</userid>
......

这样就奇怪了为什么。为什么在controller中的post请求接收的问题,定义post的代码如下:


@RequestMapping(value = "/notify", method = RequestMethod.POST)
    // @RequestBody String requestBody
    public void payNotify(@RequestBody String requestBody)
    {
.....
 Systemout.println(requestBody);
// 打印出来的结果就是上面写的
    }


上面方法定义public void payNotify(ServletRequest request, ServletResponse response)这样的话,通过request的输入流来取为空,不知道有什么说法的在使用spring mvcding?


展开
收起
黄一刀 2020-05-26 20:29:30 1082 0
1 条回答
写回答
取消 提交回答
  • 其实lz可以把你发送的数据文件做一个java VO的转换不是很好吗?就可以避免特殊符号转义的问题了。再者SpringMVC是支持传递对象的


    ######对啊,是xml的字符串数据,主要是不知道杀问题对返回的数据</>这个字符都给unicode了。######如果是xml的话你可以向着json这块来做。是一个道理。######人家给你传递的东西是什么格式?xml??######那你着手对这个进行特殊字符处理吧。我也不知道了。用第三方的蛋疼,呵呵######这个是第三方平台给我返回的数据,本地是定义了一个vo,是用来解析返回成vo对象的。
    2020-05-27 10:09:55
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
workshop专场-微服务专场-开发者动手实践营-微服务-Spring Cloud Alibaba 微服务全家桶体验 立即下载
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载

相关实验场景

更多