微信js sdk invalid signature签名错误

invalid signature为签名错误

前提:严格按照官网提供的生成签名的方法进行签名。

但我在这要分享的问题是这样的:我们获取js-sdk配置信息是通过一个单独的Ajax请求得到的,请求的参数是当前页面的URL地址,传递到后台生成签名,把返回的信息作为参数传递给(wx.config)。

问题1:在传递参数的过程中,如果当前页面的URL地址中包含有参数,那么把这完整的URL地址作为参数放到Ajax中的时候,就会丢失部分参数,所以就会出现签名失败

解决的方案是:传递URL地址的时候需要对地址进行编码(encodeURIComponent),传递到后台后再进行解码(URLDecoder.decode(url, "UTF-8"))。

问题2:如果URL地址中的参数含有空格的话,浏览器地址栏中会把空格显示成加号(+),但是我们在获取URL并传递后台的时候却依然是空格

解决的方案是:后台把参数中的空格做一个替换(url.replace(' ', '+'))。

至此,可以解决我们项目中遇到的签名失败的问题。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,324评论 19 139
  • 秋风瑟瑟薄衣冷, 大好光阴也有冬。 不见蝴蝶花共舞, 大河不改路朝东。 寻常往事花间露, 今日匆匆不落空。 冷下江...
    文山鹿阅读 1,612评论 55 30
  • 前期回顾: 小诺陪妈妈出去买东西,无缘无故跟人吵了起来,对比婆婆的知书达礼,小诺叹息自己的苦闷。 转眼小诺结婚已经...
    温血马阅读 2,806评论 0 0
  • 一、资源估计 二、周目标制定 三、周目标分解
    slowsnail1990阅读 806评论 0 0
  • 每天的生活穿梭在公司家庭两点一线之间。早餐顿顿包子,中餐顿顿面条,晚餐来杯燕麦,开着台灯,看着那一本从未接触过的书...
    小野鸡炖冬瓜阅读 2,642评论 0 0