猿问

一个初学者的问题:Thinkphp框架Token验证通不过是什么原因?

框架目录结构:

入口文件:Project001.php代码如下:

<?php 

define('THINK_PATH', './ThinkPHP/');

define('APP_NAME','Project001');

define('APP_PATH','./Project001/');

require(THINK_PATH.'/ThinkPHP.php');

?>

文件夹Project001\lib\Action下IndexAction.class.php文件代码如下:

<?php

// 本类由系统自动生成,仅供测试用途

class IndexAction extends Action {

    public function index()

{

//  二、验证


//1.将timestamp,nonce,token按字典序排序

$timestamp=$_GET['timestamp'];

$nonce    =$_GET['nonce'];

$token    ='weixin';

$signature=$_GET['signature'];

$array    =array($timestamp,$nonce,$token);

sort($array);

//2.将排序后的三个参数拼接并用sha1加密

$tmpstr=implode('',$array);

$tmpstr= sha1($tmpstr);

//3.将加密后的字符串与signature进行对比,判断请求是否来自微信

if($tmpstr==$signature)

   {

    ob_clean();

    header('content-type:text');

    echo $_GET['echostr'];

    

    exit;

   }

      public function show()

     {

        echo '<strong>Hello, baby 验证通过.</strong>';

    }

}

微信公众号验证提交地址及Token为:

http://img.mukewang.com/576d488e0001612a07490511.jpg


代码部署在SAE上。每次都提示Token验证失败,求教是什么原因?哪里出错了?

本人初学,搞两天了,通不过。请各位大侠帮忙。

慕虎4394110
浏览 2616回答 4
4回答

一二三123

查看你各个文件之间的编码是否一致

侠客岛的含笑

这是我的

侠客岛的含笑

你引入正确了,去云的代码托管看下代码,我当初是这个原因
随时随地看视频慕课网APP
我要回答