微信公众号服务器配置一直提示token验证失败?
本地使用postman,请求了要设置在微信公众号服务器回调的URL,可以正常返回echostr,点击提交,
一直报错token验证失败,请问这个是什么原因呢?
解决办法:
解决了,我去,好坑啊,遇到该问题的朋友,请做如下检查:
1.检查,request 是不是 UTF-8,避免获取的数据是乱码
2.response.setContentType("application/json;charset=UTF-8"),并且设置编码 response.setCharacterEncoding("UTF-8")
3.也是最重要的一点,接口方法要设置为void,不要返回String,因为微信公众号验证签名的那个URL,人家要求返回echostr,但是这个echostr是要输出在response.getWriter().write(echostr)中
的,不要直接 retrun echostr,(这里是真的坑,卡我好久)
4.加密的几种方式,第一种明文,第二种兼容,第三种安全模式,重点说一下,token验证的时候 微
信公众号 服务器发送的数据是不同的,大致如下:
(1)明文,signature、timeStamp、nonce和echostr都是空
(2)兼容模式和安全模式下,signature、timeStamp、nonce都是有值的,echostr是空。
区别:1.token验证和兼容模式和安全模式的,signature、timeStamp、nonce都是有值的,区别
在于,token验证的时候echostr是有值的,而安全模式下和兼容模式下,微信给我们接口发消息的
时候echostr是没有值的 2.明文模式和安全模式和兼容模式的区别在于,四个字段是否有值,可以
作为判断依据。判断是否哦要加解密
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
2022-11-04 C++调用HTTP(HttpSendRequest)如何设置延时
2021-11-04 如何查看postman的请求参数
2021-11-04 如果让HTTP请求返回JSON格式的数据
2021-11-04 HTTP请求中,如何添加token
2021-11-04 vm显示未能关闭虚拟机电源怎么办?