@ApiOperation(value = "登录")
@IgnoreAuth
@PostMapping("login_by_wechat")
public Object loginByWeChat(@RequestBody LoginInfo userInfo,HttpServletRequest request) {
}
对接微信小程序接口,发现不管咋整,userInfo 中各个属性始终是null,网上查了解决方案有
1 这是一个HTTP/HTTPS请求
2 请求方法是POST(querystring无论是否POST都将被设置到parameter中)
3 请求的类型(Content-Type头)是application/x-www-form-urlencoded
4、LoginInfo 各个属性的set方法上@JsonProperty(value=“XXXX”)
试了发现各种都不行 主要看请求的类型(Content-Type头)是application/json 也没朝前端传递来的是否是json方向考虑
最终解决:
小程序端传递来的 对象 加上 JSON.stringify(对象),只有通过 JSON.stringify转成json才能接收
在对接微信小程序接口时,遇到@RequestBody接收的userInfo总是为空的问题。尝试了多种网上解决方案,如HTTP/HTTPS请求、POST方法、Content-Type为application/x-www-form-urlencoded以及使用@JsonProperty注解,但未见效。最终发现,问题在于请求的Content-Type应为application/json,而小程序端需将对象通过JSON.stringify转换为JSON格式发送,这样才能成功接收。
3137

被折叠的 条评论
为什么被折叠?



