php版微信开发Token验证失败或请求URL超时问题的解决方法


Posted in PHP onSeptember 23, 2016

本文实例分析了php版微信开发Token验证失败或请求URL超时问题的解决方法。分享给大家供大家参考,具体如下:

微信开发最近要用到的一个功能,其实就是一个非常的简单的用户输入然后自动搜索数据库并进行一个数据回复了,这个与官方没多大的问题,但小编就微信Token验证失败折腾了许多,下面解决了给各位分析一下.

1.Token验证失败

这个就是要检查配置文件了,最基本的就是

define("TOKEN", "weixin");  weixin 是你的微信开发后台的ID

微信开发Token验证失败或请求URL超时问题解决办法

2.请求URL超时

这个没什么办法多提交几次了,这个还有就是服务器安装了安全狗之类的软件把微信IP给拦截了,可以检查一下。

3.官方下载一个wechatCallbackapiTest类然后进行一下操作即可,代码如下:

define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
if (isset($_GET['echostr'])) {
  $wechatObj->valid();
}else{
  $wechatObj->responseMsg();
}

wechatCallbackapiTest类就代码如下:

class wechatCallbackapiTest
{
  public function valid()
  {
    $echoStr = $_GET["echostr"];
    if($this->checkSignature()){
      echo $echoStr;
      exit;
    }
  }
  private function checkSignature()
  {
    $signature = $_GET["signature"];
    $timestamp = $_GET["timestamp"];
    $nonce = $_GET["nonce"];
    $token = TOKEN;
    $tmpArr = array($token, $timestamp, $nonce);
    sort($tmpArr);
    $tmpStr = implode( $tmpArr );
    $tmpStr = sha1( $tmpStr );
    if( $tmpStr == $signature ){
      return true;
    }else{
      return false;
    }
  }
  public function responseMsg()
  {
    $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
    if (!emptyempty($postStr)){
      $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
      $fromUsername = $postObj->FromUserName;
      $toUsername = $postObj->ToUserName;
      $keyword = trim($postObj->Content);
      $time = time();
      $textTpl = "<xml>
            <ToUserName><![CDATA[%s]]></ToUserName>
            <FromUserName><![CDATA[%s]]></FromUserName>
            <CreateTime>%s</CreateTime>
            <MsgType><![CDATA[%s]]></MsgType>
            <Content><![CDATA[%s]]></Content>
            <FuncFlag>0</FuncFlag>
            </xml>";
      if($keyword != " " || !emptyempty( $keyword ) )
      {
  msgType = "text";
  //$contentStr .= date("Y-m-d H:i:s",time());
  $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
  echo $resultStr;
      }
    }else{
      echo "";
      exit;
    }
  }
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
桌面中心(四)数据显示
Oct 09 PHP
PHP获取网卡地址的代码
Apr 09 PHP
PHP操作mysql函数详解,mysql和php交互函数
May 19 PHP
PHP定时更新程序设计思路分享
Jun 10 PHP
深入理解PHP之OpCode原理详解
Jun 01 PHP
详解PHP中websocket的使用方法
Sep 15 PHP
PHP7常量数组用法分析
Sep 26 PHP
php结合ajax实现手机发红包的案例
Oct 13 PHP
PHP简单实现循环链表功能示例
Nov 10 PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
Feb 06 PHP
Laravel框架模板加载,分配变量及简单路由功能示例
Jun 11 PHP
php实现微信分享朋友链接功能
Feb 18 PHP
php版微信公众账号第三方管理工具开发简明教程
Sep 23 #PHP
php版微信公众平台接口参数调试实现判断用户行为的方法
Sep 23 #PHP
php使用CURL模拟GET与POST向微信接口提交及获取数据的方法
Sep 23 #PHP
php版微信公众平台之微信网页登陆授权示例
Sep 23 #PHP
中高级PHP程序员应该掌握哪些技术?
Sep 23 #PHP
php利用递归实现删除文件目录的方法
Sep 23 #PHP
php版微信公众平台开发之验证步骤实例详解
Sep 23 #PHP
You might like
php实现改变图片直接打开为下载的方法
2015/04/14 PHP
CodeIgniter框架实现的整合Smarty引擎DEMO示例
2019/03/28 PHP
IE与FireFox的兼容性问题分析
2007/04/22 Javascript
Js注册协议倒计时的小例子
2013/06/24 Javascript
jquery禁用右键示例
2014/04/28 Javascript
jQuery实现鼠标双击Table单元格变成文本框及输入内容后更新到数据库的方法
2015/11/25 Javascript
Javascript中匿名函数的调用与写法实例详解(多种)
2016/01/26 Javascript
怎样判断jQuery当前元素是隐藏还是显示
2016/11/23 Javascript
详解JavaScript RegExp对象
2017/02/04 Javascript
微信小程序开发教程之增加mixin扩展
2017/08/09 Javascript
AngularJS+Bootstrap3多级导航菜单的实现代码
2017/08/16 Javascript
jQuery 防止相同的事件快速重复触发方法
2018/02/08 jQuery
基于Koa2写个脚手架模拟接口服务的方法
2018/11/27 Javascript
JS实现简单的文字无缝上下滚动功能示例
2019/06/22 Javascript
[08:08]2014DOTA2国际邀请赛中国区预选赛精彩TOPPLAY
2014/06/25 DOTA
python高并发异步服务器核心库forkcore使用方法
2013/11/26 Python
python逐行读取文件内容的三种方法
2014/01/20 Python
用Python进行TCP网络编程的教程
2015/04/29 Python
用ReactJS和Python的Flask框架编写留言板的代码示例
2015/12/19 Python
Python三级目录展示的实现方法
2016/09/28 Python
详谈Python高阶函数与函数装饰器(推荐)
2017/09/30 Python
Python把csv数据写入list和字典类型的变量脚本方法
2018/06/15 Python
Python常见MongoDB数据库操作实例总结
2018/07/24 Python
基于python实现地址和经纬度转换
2020/05/19 Python
python如何查看网页代码
2020/06/07 Python
Python实现打包成库供别的模块调用
2020/07/13 Python
matplotlib bar()实现百分比堆积柱状图
2021/02/24 Python
18-35岁旅游团的全球领导者:Contiki
2017/02/08 全球购物
JDO的含义
2012/11/17 面试题
药学专业大学生自荐信
2013/09/28 职场文书
在职人员函授期间自我评价分享
2013/11/08 职场文书
一名女生的自荐信
2013/12/08 职场文书
升旗仪式主持词
2014/03/19 职场文书
丧事主持词大全
2014/04/02 职场文书
幼儿园师德师风学习材料
2014/05/29 职场文书
2019年中,最受大众欢迎的6本新书
2019/08/07 职场文书