微信小程序向SpringMVC后台发起POST请求,参数无法接收的问题

1、微信小程序向SpringMVC发起GET请求时,将header的content-type设置成application/json,服务端可以正常接收和返回数据,请求成功。

2、但是当我发起POST请求时,服务端无法接收到数据,全部都是null。

3、上网搜索解决方法,说是要在小程序端将content-type改成x-www-form-urlencoded服务端就能接收数据了,但是依然无法接收到数据。

4、有网友说要配置CommonsMultipartResolver,于是我在spring-mvc.xml的配置文件中添加配置。

在pom中加入依赖

仍然没有接收到数据。

5、后面又有网友说,要在参数前面加入@RequestBody 注解,并且引入三个包:

6、我又把小程序端的POST请求的content-type设置成application/json之后。重新测试之后。SpringMVC后台接收到了小程序端发来的数据。

7、经过这么多的操作步骤之后,我不清楚到底是哪一个配置起了作用,或者说都起到了作用,于是,我将spring-mvc.xml的CommonsMultipartResolver配置注释掉,注释掉,pom中commons-fileupload和commons-io依赖,经测试,SpringMVC后台仍然可以接收到数据。于是可以确定不是CommonsMultipartResolver配置起作用。

8、将SpringMVC接口的@RequestBody注释掉,重新测试后,发现SpringMVC接收的数据全部是null,于是可以确定是@RequestBody起了作用。

9.将pom中的jacson相关的三个依赖注释掉,重新测试,发现出现了415的错误。于是可以确定,这三个依赖也起到了作用。

10.将小程序端的header的content-type改成x-www-form-urlencoded,重新测试。出现了415的错误,所以content-type也起了作用。

 

总结:综上所述,SpringMVC后台要接收微信小程序POST请求的参数的话要在三个地方着手:

引入Jackson三个pom依赖+controller层接口的参数前加@RequestBody注解+小程序端的content-type设置成application/json注解

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值