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 相关文章推荐
phpmyadmin导入(import)文件限制的解决办法
Dec 11 PHP
phpMyadmin 用户权限中英对照
Apr 02 PHP
php flv视频时间获取函数
Jun 29 PHP
php数组函数序列之array_combine() - 数组合并函数使用说明
Oct 29 PHP
PHP安全防范技巧分享
Nov 03 PHP
将博客园(cnblogs.com)数据导入到wordpress的代码
Jan 06 PHP
php preg_replace替换实例讲解
Nov 04 PHP
php带抄送和密件抄送的邮件发送方法
Mar 20 PHP
PHP模拟QQ登录的方法
Jul 29 PHP
php实现XML和数组的相互转化功能示例
Feb 08 PHP
一个实用的php验证码类
Jul 06 PHP
使用PHP反射机制来构造"CREATE TABLE"的sql语句
Mar 21 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用函数嵌入网站访问量计数器
Oct 27 #PHP
You might like
PHP的Yii框架中View视图的使用进阶
2016/03/29 PHP
thinkphp5框架调用其它控制器方法 实现自定义跳转界面功能示例
2019/07/03 PHP
ExtJS4如何给同一个formpanel不同的url
2014/05/02 Javascript
在HTML代码中使用JavaScript代码的例子
2014/10/16 Javascript
Shell脚本实现Linux系统和进程资源监控
2015/03/05 Javascript
使用AmplifyJS组件配合JavaScript进行编程的指南
2015/07/28 Javascript
jquery html5 视频播放控制代码
2016/11/06 Javascript
vue.js2.0 实现better-scroll的滚动效果实例详解
2018/08/13 Javascript
js实现简单选项卡功能
2020/03/23 Javascript
Vue 指令实现按钮级别权限管理功能
2019/04/23 Javascript
Python遍历指定文件及文件夹的方法
2015/05/09 Python
Python中集合的内建函数和内建方法学习教程
2015/08/19 Python
详解Python如何获取列表(List)的中位数
2016/08/12 Python
Python简单实现查找一个字符串中最长不重复子串的方法
2018/03/26 Python
Python字符串的全排列算法实例详解
2019/01/07 Python
解决Pycharm后台indexing导致不能run的问题
2019/06/27 Python
你可能不知道的Python 技巧小结
2020/01/29 Python
python 实现图像快速替换某种颜色
2020/06/04 Python
css3学习心得分享
2013/08/19 HTML / CSS
利用HTML5+css3+jquery+weui实现仿微信聊天界面功能
2018/01/08 HTML / CSS
YSL圣罗兰美妆美国官网:Yves Saint Lauret US
2016/11/21 全球购物
英国伦敦的睡衣品牌:Asceno
2019/10/06 全球购物
我看到了用指针调用函数的不同语法形式
2014/07/16 面试题
如何从一个文件档案的尾端新增记录
2016/12/02 面试题
电气工程和自动化自荐信范文
2013/12/25 职场文书
高一英语教学反思
2014/01/22 职场文书
水利学院求职自荐书
2014/02/01 职场文书
12岁生日演讲稿
2014/05/14 职场文书
道路运输企业安全生产责任书
2014/07/28 职场文书
煤矿安全协议书
2014/08/20 职场文书
运动会广播稿100字
2014/09/14 职场文书
南京南京观后感
2015/06/02 职场文书
初中毕业感言300字
2015/07/31 职场文书
2020年元旦晚会策划书模板
2019/12/30 职场文书
SQL Server——索引+基于单表的数据插入与简单查询【1】
2021/04/05 SQL Server
Windows11插耳机没反应怎么办? win11耳机没声音的多种解决办法
2021/11/21 数码科技