本文主要是介绍微信公众号绑定开发者后端,报错“系统发生错误,请稍后重试”的坑,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、问题描述
在公众号后端填写完基本配置,点击保存,发现提示“系统发生错误,请稍后重试”。联系公众号客服回复,涉及开发内容不给支持-_-||
二、经多次百度,结合实际尝试,总结解决方案如下:
1. 问题发生的原因
在官方说明文档有这样一个说明:
https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Access_Overview.html
只能怪自己没认真看文档。。。
2. 实现代码
说明:验证echostr请求会调GET请求,验证通过才能绑定成功;绑定成功后,回调的事件xml会调用相同url的POST请求传进来,所以我们需要2个接口来实现
@RequestMapping(value = "eventCall", method = RequestMethod.GET)
public void eventCallAuth(HttpServletRequest req, HttpServletResponse resp) {log.info("进入验证微信公众号绑定");try{String signature = req.getParameter("signature");//签名String timestamp = req.getParameter("timestamp");//时间戳String nonce = req.getParameter("nonce");//随机数String echostr = req.getParameter("echostr");//随机字符串用于初次绑定服务器原样返回resp.getWriter().write(echostr);//用于直接返回log.info("接口配置信息验证请求签名signature={},时间戳timestamp={},随机数nonce={},随机字符串echostr={}",signature,timestamp,nonce,echostr);}catch (Exception e){log.error("验证微信公众号绑定失败,",e);}
}
@RequestMapping(value = "eventCall", method = RequestMethod.POST)
public String eventCall(HttpServletRequest req, @RequestBody(required = false)String bodyStr) {log.info("bodyStr={}",bodyStr);
}
=====================================
这样代码部署后,即可绑定成功,同时能够正确接收到事件回调。
这篇关于微信公众号绑定开发者后端,报错“系统发生错误,请稍后重试”的坑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!