700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 微信公众平台开发 微信JS-SDK对接invalid signature报错解决

微信公众平台开发 微信JS-SDK对接invalid signature报错解决

时间:2024-05-18 01:45:44

相关推荐

微信公众平台开发 微信JS-SDK对接invalid signature报错解决

微信公众平台开发,微信JS-SDK对接invalid signature报错解决

简介:

大约1月多微信发布JS-SDK,功能强大,当然BUG也有不少

背景说明:

一:问题背景

笔者在做微信分享页面内容功能,即微信页面右上角的分享按钮时遇到错误,流程如下点击微信公众平台菜单某按钮,进入share分享的页面,右上角分享此share页面,报错:invalid signature

二:名词说明

controller :为WEB中控制器层,每一个controller用来响应一次请求,返回一个页面,主要用于页面跳转,例如struts,springmvc

三:invalid signature错误

没看过官方文档的请先看官方文档http://mp./wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html

在通过config接口注入权限验证配置步骤,生成签名需要的url属性错误,易导致invalid signature报错

解决方案一:

具体方法:

url填写的类型错误,如果url填写的是jsp的静态路径如:/hhhh/share.jsp,需要把url修改为跳转到share.jsp页面的控制器controller路径。修改以后,一部分用户可解决此错误,如仍不能解决,请看下面方案是否适合你

解决方案二:

说明:

还有一部分用户url为controller路径仍会出错,请先确认你的分享页面跳转来源为微信公众平台的菜单,即点击微信公众平台菜单某按钮,就进入要分享的页面,此方案只适合满足该条件者。

分析流程:

点击微信公众平台菜单时,请求微信服务器,微信服务器回调controller路径,微信公众平台返回share.jsp页面到客户端并显示。

出错原因:

url值已经设置为controller的值,如/hhhh/toshare

微信服务器在相应菜单点击事件时,在回调的路径上会加上一些参数如openid等,如此会把/hhhh/toshare调整为另一个url,此url可以通俗理解为“已加工的url”,如此导致签名所需url和微信当前页面url不同,大家可以在share页面右上角点击复制链接,把连接粘贴出来查看,会发现其url确实和自己本地项目的controller路径不同。

解决方法:

在后台再建立一个中转的控制器controller方法C2,在微信回调请求的controller方法C1中,调C2方法,通过C2跳转至分享页面。说白了,就是多建立一个controller中转一次跳转请求。

此时C2的controller路径为“未加工的路径”,保证页面上签名的url值和此"未加工的路径"相同即可

作者:墨菲:

日期 :.1.16

微信号:twilight_2046

QQ :361918593

说明 :恭迎大神指点/欢迎菜鸟转载原文:/boss_/article/details/42779481

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。