php - tp框架微信接入失败
怪我咯
怪我咯 2017-04-11 09:17:04
[PHP讨论组]

![图片上传中...]

检验signatrue 是没问题的,还可以输出 $_GET['echostr']; 但是一直token 验证失败,到底是为什么有没有谁知道,我找半天没找到哪里出问题了,救命啊!!

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(2)
大家讲道理

请使用以下代码,刚刚亲测。你代码的问题,应该是加密部分。

<?php

define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
$wechatObj->valid();

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);      //进行字典序排序
    //sha1加密后与签名对比
    if( sha1(implode($tmpArr)) == $signature ){
        return true;
    }else{
        return false;
    }
}

}
?>

大家讲道理

最后的dump();是你验证失败后加的?

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号