tp5配置微信公众号配置的注意

在使用TP5做微信开发时大家一定遇到过配置失败或者token验证失败的情况,而且使用日志打印参数进行签名算法验证都是真确的。

这个问题让我苦恼了好久。最终发现,在我们验证签名是输出了随机字符串  echo $echoStr;时如果没有关闭trace就会出现如下的输出

这个就是罪魁祸首,万一你不小心没有改配置那就会输出trace分析页面的html,而不仅仅是echoStr,所以微信服务器接收到消息后会报错,而且是抓狂的一直报错。

解决办法:

关闭 trace

另外附上tp5验证url有效性的代码。

[php] view plain copy

  1. $data = Request::instance()->get();
  2. $signature = $data[‘signature‘];
  3. $timestamp = $data[‘timestamp‘];
  4. $nonce = $data[‘nonce‘];
  5. $echostr = $data[‘echostr‘];
  6. /**
  7. * 计算微信签名
  8. */
  9. $token = Config::get(‘wechat_config.token‘);
  10. //将参数组成一维数组
  11. $signeSeed = [$token, $timestamp, $nonce];
  12. //对参数字典序排序
  13. sort($signeSeed, SORT_STRING);
  14. //拼接成字符串
  15. $signeStr = implode($signeSeed);
  16. //加密字符串成签名
  17. $signeHash = sha1($signeStr);
  18. if ($signeHash == $signature) {
  19. echo $echostr;
  20. }else{
  21. return false;
  22. }
时间: 2024-12-06 13:29:10

tp5配置微信公众号配置的注意的相关文章

Vue仿微信公众号配置页面

一.需求: 1.刚好公司需要自定义微信公众号菜单配置,在vue的后台管理系统写一个页面,进行菜单配置. 二.页面图片:(menu对象值那个地方只是打印出来看而已,自行去掉) 三.demo链接 https://summer-lin.github.io/vue-wechat-menu-demo/#/ 四.框架 vue + elementUI + mockjs 因为公司是基于vue和elementUI,如果想改其他UI框架,则将el-开头的组件都换了就行了. 五.注意事项: 1.data里面有个men

Java对接微信公众号模板消息推送

内容有点多,请耐心! 最近公司的有这个业务需求,又很凑巧让我来完成: 首先想要对接,先要一个公众号,再就是开发文档了:https://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Overview.html 不过请注意这一点 ok,我们继续:再来完成公众号的基本配置: 服务器地址(URL):必须以http://或https://开头,分别支持80端口和443端口.这个URL是很重要的,需要响应微信发送的token验证 令牌(To

[1] 微信公众号与sae的web应用之间的配置

第一步:申请sae账号,并新建web应用. 第二步:下载http://mp.weixin.qq.com/mpres/htmledition/res/wx_sample.20140819.zip压缩包,并上传到sae服务器中. 第三步:配置微信公众号接口: 输入接口配置信息,填写URL和Token.点击提交按钮. ※ 此时会发现配置不成功! 需要在代码中添加:header('content-type:text'); 全部代码如下: <?php/**  * wechat php test  */ /

nodejs + BAE 搭建微信公众号开发平台

闲来无事创建了一个微信公众账号,名曰“深圳生活小助手”, 关注的人不多,平时发一些深圳新闻,趣事啥的,为了丰富公众号的内容,准备添加一些便民查询功能,例如天气预报.快递查询等等. 于是就有了本文的内容. 深圳的读者扫描关注支持下啊... 闲话不多说,本文主要介绍的就是如何基于nodejs和百度云搭建微信公众号开发平台,下一节介绍如何基于该平台实现了一个简单的天气预报查询功能的小例子. 1. 使用Express搭建本地站点 Express 是一个简洁.灵活的 node.js Web 应用开发框架,

在新浪SAE上搭建微信公众号的python应用

微信公众平台的开发者文档https://www.w3cschool.cn/weixinkaifawendang/ python,flask,SAE(新浪云),搭建开发微信公众账号http://www.oschina.net/code/snippet_1768500_36580 从零开始 Python 微信公众号开发https://zhuanlan.zhihu.com/p/21354943 新浪云应用http://www.sinacloud.com/doc/sae/python/ SAE Pyth

虚拟主机搭建微信公众号服务器

一.前言 搭建微信公众号服务器的方式不只一种,可以用java等其他语言或是其他云空间来搭建服务器,这里总结的是用虚拟主机(主机公园中的虚拟主机)搭建微信公众号服务器的大概思路.不管用什么方式,配置微信公众号服务器的原理不会变. 二.步骤 开始开发微信公众号看这里 首先搭建服务器,因为微信公众号开发的第一步要先配置服务器 1. 万网上先去买个域名,然后再去主机公园那里买个服务器(虚拟机)(我今天用的香港虚拟机试用版还未买),然后再解析域名.详细步骤这里看教程 如果不需要建个人博客,后面的上传wor

利用nat123解决微信公众号对接服务器必须为80端口的问题

背景:最近公司接到做一个微信公众号的项目,需要我们提前做一个demo,好做项目的整体评估:我们公司本身有个云服务器,但没有备案,所以80端口还被电信屏蔽着,就想到利用nat123做80端口的映射:(外网80端口访问服务器上非80端口的应用) 前提:存在对接微信服务器的服务,云服务器本地访问地址为:http://localhost:8080/wxtest/WechatServlet 目标:外网通过80端口访问上述地址: 一:下载nat123 1:地址:http://www.nat123.com/P

利用H5开发微信公众号

一. 首先授权配置 公众号设置 -->功能设置 设置业务域名!  这里的MP_verify_w7tdZrafqhkK9Mcj.txt文件,需要放到你项目的根目录下,例子:你的项目war包叫 test.war ,里面包含了src,WEB-INFO两个文件夹,则把MP_verify_w7tdZrafqhkK9Mcj.txt放到这两个文件夹的同级目录下;即现在test.war下有两个文件夹一个txt文件:src,WEB-INFO,MP_verify_w7tdZrafqhkK9Mcj.txt. 后面就需

抛砖微信公众号应用开发

现在微信营销,真是炙手可热,各行各业都在利用微信这个社交平台,基于微信服务器这个服务网关,开发自己的应用服务,通过微信进行传播,真是方便快捷高效!大体的通信架构如下图所示. 由于工作的需要,我也着手研究微信公众平台的开发,在这过去的一周的时间,折腾了一个小实验环境,打通微信的两个基本验证关卡. 第一道验证,就是URL,Token填写完成后,点击提交的过程.(后面会详述) 第二道验证,就是公众号服务器上面的帖子进行分享等操作时,为了让别人看到友好的“标题”+“描述”+“缩略图”这种模式的帖子,必须