URL含特殊字符,微信JS-SDK接口config时报invalid signature签名错误

2015年11月21日 17:03:38

        微信JS-SDK接口config时报invalid signature签名错误,经过排查,可以肯定是当前url地址传得有问题。因为项目需要,我们的url是带参数的:

        http://www.plusonego.com:8089/FeProjectGZ/attendance?department_id=2&position_id=3&project_id=11&userid=yujiajj

$string = "jsapi_ticket=$jsapi_ticket&noncestr=$noncestr&timetamp=$timestamp&url=$url";
        $signature = sha1($string);
        $signPackage = array(
            "appId"     => $this->corpid,
            "nonceStr"  => $noncestr,
            "timestamp" => $timestamp,
            "url"       => $url,
            "signature" => $signature,
            "rawString" => $string
        );
         而根据可见,signPackage的生成参与签名的字段包括noncestr(随机字符串), 有效的jsapi_ticket, timestamp(时间戳), url(当前网页的URL,不包含#及其后面部分) 。他们的连接都用&,所以怀疑是不是我们的URL中含有&这个特殊字符没有处理。将js AJAX过来的URL打印出来发现&变成了“&amp”,原来AJAX自动把特殊字符&转成了ASCII码……

          知道之后我们唯一要做的,就是将&amp替换回&。再传过去就没问题了。

$url = str_replace("&", "&", $url);





微信js sdk invalid signature签名错误

准备工作也说一下 获取accesstoken: https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140183&token=&l...
  • bestcxx
  • bestcxx
  • 2016年04月20日 11:18
  • 2893

微信开发config:invalid signature

IOS8以上,WKWebview内核下, 应该需要严格签名url 去掉后面 # 号后面,否则会报错,config:invalid signature,在安卓下或UIWebview 都不会报错,微信...
  • kilmas2012
  • kilmas2012
  • 2017年03月20日 18:06
  • 1065

微信强制请缓存和授权登录,vue框架

... import store from './vuex/store' import cookie from './libs/cookie' // 路由预先判断...
  • kilmas2012
  • kilmas2012
  • 2017年03月20日 18:17
  • 3936

【java】微信支付生成签名的过程

关于签名的算法,api提供的原文是: 1.签名算法 签名生成的通用步骤如下: 第一步,设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序...
  • xb12369
  • xb12369
  • 2015年05月14日 11:19
  • 50623

JS-SDK使用权限签名算法

jsapi_ticket 生成签名之前必须先了解一下jsapi_ticket,jsapi_ticket是公众号用于调用微信JS接口的临时票据。正常情况下,jsapi_ticket的有效期为7200秒...
  • xuanjiewu
  • xuanjiewu
  • 2016年10月27日 15:23
  • 2202

发送HttpGet请求时,URL包含空格怎么办?

做一个项目,需要将用户的留言信息上传至服务器。 我使用的是HttpGet请求,将留言内容直接拼接在url上面的。 可是,当留言内容中间出现空格时,执行HttpGet get = new HttpG...
  • yuzhong0783
  • yuzhong0783
  • 2016年12月30日 04:47
  • 727

微信JSSDK分享接口中wx.config 出现invalid signature问题的解决办法

本文介绍微信分享开发中,wx.config中出现invalid signature的解决方法,希望对出现同样问题的朋友有所帮助。...
  • baozhengw
  • baozhengw
  • 2015年07月31日 21:52
  • 69112

获取微信昵称时 过滤特殊字符

/** * $str 微信昵称 **/ public function filter($str) { if($str){ $name = $...
  • xiawu1990
  • xiawu1990
  • 2016年07月26日 15:55
  • 11019

微信企业红包开发签名一样一直提示签名错误的解决办法

本人的XML就不贴了,涉及一些敏感信息,按照签名算法生成的签名和微信官方提供签名平台生成的签名是一样一样的。 微信官方的签名验证平台: https://pay.weixin.qq.com/wiki/...
  • hotlinhao
  • hotlinhao
  • 2016年04月27日 17:11
  • 5262

微信公众号之:JSSDK接入以及invalid signature等常见错误问题

最近在搞微信公众号开发,进行到网页开发部分被坑了一天,最坑的问题就是invalid signature,而网上大部分解答这个问题的都没有说清楚,都直接丢文档。博主决定这样很不好。本文是博主结合自身遇到...
  • u011225099
  • u011225099
  • 2017年07月31日 17:42
  • 2070
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:URL含特殊字符,微信JS-SDK接口config时报invalid signature签名错误
举报原因:
原因补充:

(最多只允许输入30个字)