微信开发token验证失败的解决

之前在服务器上成功部署并验证已通过,后开换了一个服务器地址就始终不能通过token验证,尝试了网上的很多办法,包括在
echo $echoStr;前面加上ob_clean();清空缓存等等。现在终于定位到原因,原来是在类class wechatCallbackapiTest中我写了构造函数,并将一些数据库初始化的代码放在了里面,注释掉这些代码就能获得验证通过。具体原因可能是在数据库初始化的过程中耗时较多,造成token验证中的时间戳对应不上,造成了token无法通过。现在改写了我的构造函数,根据收到的消息传一个参数给构造函数,选择性地进行数据库操作,这样问题就解决了。如下:
define("TOKEN", "wechat");
$wechatObj = new wechatCallbackapiTest(!isset($_GET['echostr']));
class wechatCallbackapiTest
{
   public function __construct($IsInitMysql = '')
   {
      //如果做太多处理会导致校验失败。可能是因为耗时导致时间戳对不上了
        if($IsInitMysql)
        {
            $this->LetcoreMysql = new LetcoreMysql();
希望对在token验证上困扰的同学有帮助,如果有更好的办法请指教
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值