Thinkphp5 微信公众号token验证不成功的原因及解决方法


Posted in PHP onNovember 12, 2017

最近要启动微信项目,上个月就开始了解微信的开发,这个月要启动项目,配置微信公众号信息一直失败。为此,我甚至手工写了微信提交过来的记录,如:

×tamp=1510210523&nonce=2414550015&signature=30b9eeb6b1134d0a53623375c48ca734c41facb5&echostr=6863786913073725439

我眼睛看着验证信息没错,输出的echostr跟get提交来的一模一样,但是还是会出错。忍无可忍,一直无法搞定。

自己做开发也算基本上路了,还在这种坑吃亏,有点不服,最后查看日志,一点点搞定。

以下是我解决问题的办法:

1.网上有人说是header要设置utf-8,我也设置了,不行;

2.有人说可能是没有日志写入权限,导致信息能正常,但是页面代码不正常,打开console,发现,网页头显示500,麻蛋,这是服务器错误啊。

估计是腾讯一旦判断到你的500代码,就不继续了。

最后检查,发现是自己的服务器日志目录权限不足,无法写入日志!

就是这个原因,导致我浪费很多小时。

最后,我把验证微信公众号的token分享给各位兄弟,希望大家不要踩坑。

$token='请填写你的公众号token';

$timestamp = $_GET[‘timestamp'];
$nonce = $_GET[‘nonce'];
$signature = $_GET[‘signature'];
$array = array($timestamp,$nonce,$token);
sort($array);

//2.将排序后的三个参数拼接后用sha1加密
$tmpstr = implode(”,$array);
$tmpstr = sha1($tmpstr);

//3. 将加密后的字符串与 signature 进行对比, 判断该请求是否来自微信
if($tmpstr == $signature)
{
echo $_GET[‘echostr'];
}
return false;

另外,提醒各位兄弟,配置信息再微信测试号配置会好些,即便错了也不用每次都扫描二维码,累死人。

微信测试号地址:https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

以上这篇Thinkphp5 微信公众号token验证不成功的原因及解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php中处理mysql_fetch_assoc返回来的数组 不用foreach----echo
May 04 PHP
从PHP的源码中深入了解stdClass类
Apr 18 PHP
yii框架配置默认controller和action示例
Apr 30 PHP
php递归json类实例
Dec 02 PHP
php给图片添加文字水印方法汇总
Aug 27 PHP
thinkPHP数据库增删改查操作方法实例详解
Dec 06 PHP
php自定义函数br2nl实现将html中br换行符转换为文本输入中换行符的方法【与函数nl2br功能相反】
Feb 17 PHP
php实现统计二进制中1的个数算法示例
Jan 23 PHP
PHP基于redis计数器类定义与用法示例
Feb 08 PHP
Linux下源码包安装Swoole及基本使用操作图文详解
Apr 02 PHP
php-fpm重启导致的程序执行中断问题详解
Apr 29 PHP
PHP设计模式(六)桥连模式Bridge实例详解【结构型】
May 02 PHP
PHP 断点续传实例详解
Nov 11 #PHP
PHP+AJAX 投票器功能
Nov 11 #PHP
PHP实现双链表删除与插入节点的方法示例
Nov 11 #PHP
PHP实现基于栈的后缀表达式求值功能
Nov 10 #PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
Nov 10 #PHP
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
Nov 10 #PHP
PHP简单实现循环链表功能示例
Nov 10 #PHP
You might like
php常见的魔术方法详解
2014/12/25 PHP
PHP利用正则表达式将相对路径转成绝对路径的方法示例
2017/02/28 PHP
通用于ie和firefox的函数 GetCurrentStyle (obj, prop)
2006/12/27 Javascript
通过event对象的fromElement属性解决热区设置主实体的一个bug
2008/12/22 Javascript
替代window.event.srcElement效果的可兼容性的函数
2009/12/18 Javascript
关于jQuery中的end()使用方法
2011/07/10 Javascript
基于jquery的滚动鼠标放大缩小图片效果
2011/10/27 Javascript
js控制鼠标事件移动及移出效果显示
2014/10/19 Javascript
jQuery简单实现遍历数组的方法
2015/04/14 Javascript
jquery中toggle函数交替使用问题
2015/06/22 Javascript
初识Javascript小结
2015/07/16 Javascript
jQuery的框架介绍
2016/05/11 Javascript
jquery层级选择器(匹配父元素下的子元素实现代码)
2016/09/05 Javascript
jQuery插件HighCharts绘制简单2D柱状图效果示例【附demo源码】
2017/03/21 jQuery
解决JSON.stringify()自动将中文转译成unicode的问题
2018/01/05 Javascript
linux 后台运行node服务指令方法
2018/05/23 Javascript
Python使用matplotlib实现在坐标系中画一个矩形的方法
2015/05/20 Python
Python通过OpenCV的findContours获取轮廓并切割实例
2018/01/05 Python
Python pandas.DataFrame调整列顺序及修改index名的方法
2019/06/21 Python
python中如何使用insert函数
2020/01/09 Python
如何基于pythonnet调用halcon脚本
2020/01/20 Python
Python通过yagmail实现发送邮件代码解析
2020/10/27 Python
css3的图形3d翻转效果应用示例
2014/04/08 HTML / CSS
html5 移动端视频video的android兼容(去除播放控件、全屏)
2020/03/26 HTML / CSS
京东奢侈品:全球奢侈品牌
2018/03/17 全球购物
Booking.com德国:预订最好的酒店和住宿
2020/02/16 全球购物
万代美国官网:PREMIUM BANDAI USA
2020/09/11 全球购物
DIY手工制作经营店创业计划书
2014/02/01 职场文书
财务人员的自我评价范文
2014/03/03 职场文书
2014年机关作风建设工作总结
2014/10/23 职场文书
好媳妇事迹材料
2014/12/24 职场文书
总账会计岗位职责
2015/04/02 职场文书
警示教育片观后感
2015/06/17 职场文书
初中班主任培训心得体会
2016/01/07 职场文书
Python 语言实现六大查找算法
2021/06/30 Python
Java 获取Word中所有的插入和删除修订的方法
2022/04/06 Java/Android