找4399生死狙击好号QQ号

你好,看到你关于微信公众平台的开发的博文,一直提示token验证失败,我甚至关闭了验证 - 开源中国社区
当前访客身份:游客 [
当前位置:
你好,想跟你请教个问题:在开发微信公众平台时,一直提示token验证失败,我甚至关闭了验证还是不行,不知道代码是有问题么?麻烦你帮忙看看,谢谢了!
这是index.php文件,代码是网上的学习用的
require('Tpl.class.php'); //载入 Tpl.class.php 文件
define('TOKEN','pory'); //定义TOKEN 常量 MP 上验证的时候就填写这个值 pory
$WeiXinobj = new WeiXin(); //实例化 WeiXin 类
$WeiXinobj-&Send(); //请求该接口文件时 先执行 Send 函数
class WeiXin extends Tpl{
//此函数表示所在类被实例化的同时 将会执行它内部的方法。
function __construct(){
if(!$this-&checkSignature()) //检查来路 可提高安全性
public function Send(){
//获取输入流并取出主要对象的值
$postStr = file_get_contents(&php://input&);
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fu = (string)$postObj-&FromUserN //取出用户的账号
$tu = (string)$postObj-&ToUserN //公众账号
$MsgType = (string)$postObj-&MsgT //取出消息类型
//根据消息类型进入相应操作
switch($MsgType){
case 'text': //文字消息类型
$content = trim($postObj-&Content); // 取出消息内容
//根据发送的内容回复相应的内容
switch($content){
case '0': //如果发送的是数字0则回复以下内容
$this-&txt($fu,$tu,'你发送了数字 0 ,所以你就看到了这么多 。');
case '1': //如果发送的是数字1则回复以下内容
$this-&txt($fu,$tu,'你发送了数字 1 ,所以你就看到了这么多 。');
case '2': //如果发送的是数字2 则回复以下内容
$msg['title'] = '音频文件标题';
$msg['intro'] = '音频文件简介';
$msg['url'] = 'http://facebowl.in/EverythingIsBetter.mp3'; //音频文件的绝对完整 url
$msg['hqurl'] = 'http://facebowl.in/EverythingIsBetter.mp3'; //音频文件的高清绝对完整 url wifi下优先播放此url.
$this-&audio($fu,$tu,$msg); //回复一个可播放的音频消息
default: //如果是其他内容则回复
$this-&txt($fu,$tu,'你发送的内容是。'.$content);
case 'image': //图像消息类型
$pic = (string)$postObj-&PicU //取出图片url
//回复一个图文 开始定义数组
$msg[0]['title'] = '这里是标题';
$msg[0]['intro'] = '简介';
$msg[0]['pic'] = $ //图片URL 这里是返回发送的原图 URL 要使用绝对完整地址
$msg[0]['url'] = 'http://bbs.binguo.me'; //这里是超链接
$this-&news($fu,$tu,$msg);
//如要回复多条图文,可对该二维数组赋值多个元素 如 $msg[0] $msg[1] $msg[2] 。
case 'location': //地理位置消息类型
$l_x = $postObj-&Location_X; //取出 x 坐标
$l_y = $postObj-&Location_Y; //取出 y 坐标
$scale = $postObj-&S //取出 缩放等级
$lable = $postObj-&L //取出 位置信息
//回复文字消息
$this-&txt($fu,$tu,'你所处位置是:'.$lable.'坐标为 X:'.$l_x.'Y:'.$l_y);
case 'event': //事件消息类型
$event = $postObj-&E //取出事件内容
$eventKey = $postObj-&EventK //取出事件标识
switch($event){
case 'subscribe': //如果为 订阅 事件
$this-&txt($fu,$tu,'欢迎关注我们,发送数字 0 试试。');
//默认执行接口验证方法
$this-&valid();
//验证接口的方法 也可直接 echo $_GET[&echostr&]; TOKEN 任意设置。
public function valid(){
$echoStr = $_GET[&echostr&];
//valid signature , option
if($this-&checkSignature()){
echo $echoS
//检查TOKEN是否一致 可用来检测请求来路是否为微信
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 ){
里面使用的类Tpl.class如下
class Tpl{
function txt($fu,$tu,$content,$flag = 0){
$tpl = &&xml&
&ToUserName&&![CDATA[&.$fu.&]]&&/ToUserName&
&FromUserName&&![CDATA[&.$tu.&]]&&/FromUserName&
&CreateTime&&.$_SERVER['REQUEST_TIME'].&&/CreateTime&
&MsgType&&![CDATA[text]]&&/MsgType&
&Content&&![CDATA[&.$content.&]]&&/Content&
&FuncFlag&&.$flag.&&/FuncFlag&
function news($fu,$tu,$data,$flg = 0){
$num = count($data);
if($num & 1){
$add = $this-&news_add($data);
$tpl = & &xml&
&ToUserName&&![CDATA[&.$fu.&]]&&/ToUserName&
&FromUserName&&![CDATA[&.$tu.&]]&&/FromUserName&
&CreateTime&&.$_SERVER['REQUEST_TIME'].&&/CreateTime&
&MsgType&&![CDATA[news]]&&/MsgType&
&Content&&![CDATA[%s]]&&/Content&
&ArticleCount&&.$num.&&/ArticleCount&
&Articles&
&/Articles&
&FuncFlag&&.$flag.&&/FuncFlag&
$tpl = & &xml&
&ToUserName&&![CDATA[&.$fu.&]]&&/ToUserName&
&FromUserName&&![CDATA[&.$tu.&]]&&/FromUserName&
&CreateTime&&.$_SERVER['REQUEST_TIME'].&&/CreateTime&
&MsgType&&![CDATA[news]]&&/MsgType&
&Content&&![CDATA[%s]]&&/Content&
&ArticleCount&1&/ArticleCount&
&Articles&
&Title&&![CDATA[&.$data[0]['title'].&]]&&/Title&
&Description&&![CDATA[&.$data[0]['intro'].&]]&&/Description&
&PicUrl&&![CDATA[&.$data[0]['pic'].&]]&&/PicUrl&
&Url&&![CDATA[&.$data[0]['url'].&]]&&/Url&
&/Articles&
&FuncFlag&&.$flag.&&/FuncFlag&
function news_add($data){
$add = &&;
foreach ($data as $k){
$add .= &&item&
&Title&&![CDATA[&.$k['title'].&]]&&/Title&
&Description&&![CDATA[&.$k['intro'].&]]&&/Description&
&PicUrl&&![CDATA[&.$k['pic'].&]]&&/PicUrl&
&Url&&![CDATA[&.$k['url'].&]]&&/Url&
function audio($fu,$tu,$data){
$tpl = &&xml&
&ToUserName&&![CDATA[&.$fu.&]]&&/ToUserName&
&FromUserName&&![CDATA[&.$tu.&]]&&/FromUserName&
&CreateTime&&.$_SERVER['REQUEST_TIME'].&&/CreateTime&
&MsgType&&![CDATA[music]]&&/MsgType&
&Title&&![CDATA[&.$data['title'].&]]&&/Title&
&Description&&![CDATA[&.$data['intro'].&]]&&/Description&
&MusicUrl&&![CDATA[&.$data['url'].&]]&&/MusicUrl&
&HQMusicUrl&&![CDATA[&.$data['hqurl'].&]]&&/HQMusicUrl&
&FuncFlag&0&/FuncFlag&
再次谢谢你呢
共有9个回答
<span class="a_vote_num" id="a_vote_num_
它验证与实际开发要分两部走, 验证时,服务器要输出字符串echostr, 具体请仔细看接入的第二步:验证服务器地址的有效性。 话说官方就是个死城,问n年也没人鸟!!
<span class="a_vote_num" id="a_vote_num_
引用来自“loyal”的评论 这么简单你都搞不定...
1.必须是80端口
2.用初始的token,改后不会立即生效. 这些都设置好了,正因为简单,出了问题不知道哪错了
<span class="a_vote_num" id="a_vote_num_
这么简单你都搞不定...
1.必须是80端口
2.用初始的token,改后不会立即生效.
<span class="a_vote_num" id="a_vote_num_
你把相同的代码放到其他空间和域名试试,
我有遇到过这种情况,当你确保你代码没错时,可能是其他原因
我以前买虚拟主机时送了个域名(很长的一堆),然后自己备案了个姓名域名,解析成功后
做微信开发,用的是我备案的域名下的文件做微信转接url
刚开始还好使,一段时间后没任何反应了,最后我换到那个送的免费域名 就好使了,我也不知道什么原因,如果你和我遇到的情况类似,不妨试试,希望能解决问题
<span class="a_vote_num" id="a_vote_num_
引用来自“魏涛”的评论 token是否与后台设置的一致?我看你这里用的是pory 什么后台呢?是在URL和TOKEN那么?应该是一样的
<span class="a_vote_num" id="a_vote_num_
token是否与后台设置的一致?我看你这里用的是pory
<span class="a_vote_num" id="a_vote_num_
引用来自“hphper”的评论开发者模式开了吗?你是指什么开发模式?这个就是在开发模式下面提交URL和token时失败了
<span class="a_vote_num" id="a_vote_num_
开了,就是在开发模式下面提交URL和token时一直失败
<span class="a_vote_num" id="a_vote_num_
开发者模式开了吗?
更多开发者职位上
有什么技术问题吗?41275人阅读
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网站的观点或立场
访问:751683次
积分:7469
积分:7469
排名:第2256名
原创:129篇
评论:430条
文章:19篇
阅读:48062
(2)(3)(3)(4)(1)(3)(2)(1)(1)(2)(4)(5)(1)(1)(7)(3)(3)(4)(8)(5)(16)(8)(3)(2)(2)(1)(2)(2)(1)(3)(3)(6)(5)(9)(9)(5)(1)(2)(1)(1)}

我要回帖

更多关于 生死狙击雷霆之怒号 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信