海岛奇兵失败者token验证失败进不去是怎么回事?

Token验证失败&微信&微信公众平台开发 Token校验失败&URL Token原文&
Token验证失败的解决方法
一、问题由来 在使用URL和Token启用微信公众平台开发模式消息接口的时候,我们会碰到下面三种情况&
1. token校验失败
这样回头检查一下各项配置是否正确。如果确定配置没有问题,请按下面的方法检查
2. 请求URL超时
你的服务器在国外,或者服务器网速不给力,一般多试几次就可以了。如果经常这样,就需要考虑更换服务器
3. 提交成功
&恭喜你,配置成功了。
我们来讲解一下第一种的原因及解决方法。
二、问题分析
首先要了解的是什么是URL和Token,在这里,URL就是放置了接口程序的网址,这个网址一般得是你自己的服务器或空间地址。你自己在这个空间上某个目录已经有接口程序了,你知道这个接口程序在互联网上的访问地址是什么。而Token就是一个令牌,该令牌是个数字或字母形式的字符串,用于微信服务器与你的服务器进行通讯的时候的身份验证。防止非法数据来搞乱。
然后要了解的是开发模式为什么要使用Url和Token,使用url是为了让微信服务器和你的服务器进行通讯对话,从而达到开发模式下自动回复的目的。而实现这个通讯,必须有相应的程序为你完成这个功能,而这个程序必须已经开发完成并且放置于url路径下面,当你填写完url和token的时候,微信服务器就会和你的服务器下的程序进行一次认证过程,认证通过表明这个服务器是你的并且程序没有问题。不然你填个不存在的url或者url下面个没有相应的接口功能,那是通不过的。
你可以先用下面的测试通过
URL:   li.com/test.phpToken:  weixin消息加解密方式: 明文模式
三、问题解决&
1. &技术分析法
这次我们在代码里面加入跟踪http记录的方法来查看我们自己的服务器收到了请求没有回应,还是微信根本没有发请求过来。通过调用系统环境变量$_SERVER,可以查看到HTTP请求的信息,其中两项重要的是
把其加入代上面的代码中,并且将其写入到本地文件中来,全部代码
方倍工作室 /txw1958/
CopyRight 2013
All Rights Reserved
traceHttp();
define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
if (isset($_GET['echostr'])) {
$wechatObj-&valid();
$wechatObj-&responseMsg();
class wechatCallbackapiTest
public function valid()
$echoStr = $_GET["echostr"];
if($this-&checkSignature()){
echo $echoStr;
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;
return false;
public function responseMsg()
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj-&FromUserN
$toUsername = $postObj-&ToUserN
$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&
if($keyword == "?" || $keyword == "?")
$msgType = "text";
$contentStr = date("Y-m-d H:i:s",time());
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
echo $resultStr;
function traceHttp()
logger("\n\nREMOTE_ADDR:".$_SERVER["REMOTE_ADDR"].(strstr($_SERVER["REMOTE_ADDR"],'101.226')? " FROM WeiXin": "Unknown IP"));
logger("QUERY_STRING:".$_SERVER["QUERY_STRING"]);
function logger($log_content)
if(isset($_SERVER['HTTP_APPNAME'])){
sae_set_display_errors(false);
sae_debug($log_content);
sae_set_display_errors(true);
}else{ //LOCAL
$max_size = 500000;
$log_filename = "log.xml";
if(file_exists($log_filename) and (abs(filesize($log_filename)) & $max_size)){unlink($log_filename);}
file_put_contents($log_filename, date('Y-m-d H:i:s').$log_content."\r\n", FILE_APPEND);
这样,当我们提交之后,就会生成一个log.html文件在当前目录用浏览器直接打开填写的url,也会写一次文件。
直接用浏览器打开url+log.html路径,我的记录如下:
10:15:18 REMOTE_ADDR:212.179.24.103 Unknown IP
10:15:18 QUERY_STRING:
在微信中点击提交一次,再一次生成记录,如下:
10:15:49 REMOTE_ADDR:101.226.89.83 From WeiXin
10:15:49 QUERY_STRING:signature=edededf6ccb4c85fb0e23&echostr=7813673&tamp=&nonce=
从上可以看到,这次IP来自101.226.89.83,是微信的IP,我把这个IP加入到代码中自行判断
现在可以根据下面的来检测自己的问题在哪一个地方
如果没有生成日志:
  那是微信服务器都没有联系到你,需要检查服务器是否可以通过公网访问,URL路径是否存在并且正确。
如果生成了日志:
  如果你生成了日志,有REMOTE_ADDR和QUERY_STRING,查看IP是不是来自上海(目前微信服务器部署在上海电信机房,几次故障都说是上海挖路引起的),查看QUERY_STRING格式是否和官方指南中描述的类似,如果这些没有问题,那先检查Token填写的是否和程序中的一致,再检查程序是否有问题。
如果上面的方法你没有看懂,或者无法解决该问题,建议你从微信公众平台的入门教程开始,学习一下微信公众平台开发的基础
2.&&付费解决法
如果使用上面方法还是没有解决你的痛苦,方倍工作室承接这一技术问题的解决。我们的联系QQ:
阅读(...) 评论()34520人阅读
Git/XML/Perl/汇编/VBA/PHP(12)
之前学了PHP后做的平台的开发,token验证是成功的,昨晚手贱改了一下聊天机器人的url和token之后,感觉没小黄鸡好玩,就改了回来,一改就是一晚上。而且昨晚微信开发者的那个后台基本登不上去,一直的token错误。define(&TOKEN&, &weixin&);明明就是weixin这样的token常量。早上,发现:原来还有一层文件夹。这样,我的url就有错了。应该是http://1./zkxyt/main.php而不是http://1./main.php后面我自己改了,把main.php移了出来,发现可以了。但是想想昨晚的问题不是路径的问题,反正不行的话直接删除应用,新建一个新的,如果调用第三方的接口还是token出错的话,那我也不知道了~
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:623598次
积分:6713
积分:6713
排名:第2425名
原创:122篇
评论:382条
文章:19篇
阅读:41720
(4)(1)(3)(2)(1)(1)(2)(4)(5)(1)(1)(7)(3)(3)(4)(9)(5)(16)(8)(3)(2)(2)(1)(2)(2)(1)(3)(3)(6)(5)(9)(9)(5)(1)(2)(1)(1)只需一步,快速开始
后使用快捷导航没有帐号?
有团队或个人能把此带客通做成完全能商用的成熟的版本请联系我QQ:
全平台视频监控,支持安卓苹果以及pcweb,支持海康大华等主流dvr,全部源码以及文档
单聊、群聊、商我公司成立于05年一直专注于软件研发,品质保障,为客户提供专业优质化服务,并根据客户实际情况,提供个性化建议,确保项目顺利开展我公司成立于05年一直专注于软件研发,品质保障,为客户提供专业优质化服务,并根据客户实际情况,提供个性化建议,确保项目顺利开展 本帖最后由 电气 于
17:52 编辑
专业BUG修复,小猪/微米,微信营销系统及微店系统
查看: 15827|回复: 5
有没有人遇到过TOKEN验证失败的情况啊
主题帖子积分
本帖最后由 junafaf 于
14:52 编辑
最近用小猪后台对接不了公众号了,微信后台那边一直显示TOKEN验证失败
但是别人服务器的后台比如版主的都可以,所以排除是微信方面的问题。
之前没有这种情况也是最近才会的,更新以后后台显示系统反应慢 关键词没响应,不知道跟这个有没有关系
但是点击以后又出错:
非法操作:repairTable
FILE: D:\wwwroot\Lib\Core\Action.class.php  LINE: 237
求大神们帮忙解决下问题。感激不禁
本帖子中包含更多资源
才可以下载或查看,没有帐号?
主题帖子积分
检查是否修改了 PigCms\Lib\Action\Home\WeixinAction.class.php文件
浏览器输入 http://你的域名/index.php?g=Home&m=Weixin&a=index&token=你公众号的token
检查是否有错误。
服务器什么系统?如果不行请联系QQ协助解决
承接 微信开发,PHP解密(PHP5.2免费5.3一元一个5.4两元一个 量大从优)出售zend5.4解密工具秒解小猪CMS最新加密,源码破解修复,服务器/源码去后门 服务器配置 安全检测等业务……有需要请带上QQ跟需求私密我
主题帖子积分
检查是否修改了 PigCms\Lib\Action\Home\WeixinAction.class.php文件
浏览器输入 http://你的域名/index ...
感谢版主,之前聊天接口出错那次确实修改了这个文件,终于解决了太感谢了
主题帖子积分
新手上路, 积分 29, 距离下一级还需 21 积分
新手上路, 积分 29, 距离下一级还需 21 积分
感谢版主,之前聊天接口出错那次确实修改了这个文件,终于解决了太感谢了
我现在也遇到这个情况 楼主是怎么处理的啊?
主题帖子积分
注册会员, 积分 63, 距离下一级还需 137 积分
注册会员, 积分 63, 距离下一级还需 137 积分
最近也出现了这个问题哟
微信公众平台http://www.wxgzpt.cc
主题帖子积分
新手上路, 积分 9, 距离下一级还需 41 积分
新手上路, 积分 9, 距离下一级还需 41 积分
感谢版主,之前聊天接口出错那次确实修改了这个文件,终于解决了太感谢了
我也碰到这个问题,怎么处理呢
Powered by

我要回帖

更多关于 海岛奇兵安装失败 的文章

 

随机推荐