首页 > 代码库 > tp5配置微信公众号配置的注意
tp5配置微信公众号配置的注意
在使用TP5做微信开发时大家一定遇到过配置失败或者token验证失败的情况,而且使用日志打印参数进行签名算法验证都是真确的。
这个问题让我苦恼了好久。最终发现,在我们验证签名是输出了随机字符串 echo $echoStr;时如果没有关闭trace就会出现如下的输出
这个就是罪魁祸首,万一你不小心没有改配置那就会输出trace分析页面的html,而不仅仅是echoStr,所以微信服务器接收到消息后会报错,而且是抓狂的一直报错。
解决办法:
关闭 trace
另外附上tp5验证url有效性的代码。
[php] view plain copy
- $data = Request::instance()->get();
- $signature = $data[‘signature‘];
- $timestamp = $data[‘timestamp‘];
- $nonce = $data[‘nonce‘];
- $echostr = $data[‘echostr‘];
- /**
- * 计算微信签名
- */
- $token = Config::get(‘wechat_config.token‘);
- //将参数组成一维数组
- $signeSeed = [$token, $timestamp, $nonce];
- //对参数字典序排序
- sort($signeSeed, SORT_STRING);
- //拼接成字符串
- $signeStr = implode($signeSeed);
- //加密字符串成签名
- $signeHash = sha1($signeStr);
- if ($signeHash == $signature) {
- echo $echostr;
- }else{
- return false;
- }
tp5配置微信公众号配置的注意
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。