关于easywchat的sdk缓存问题 Credential "component_verify_ticket" does not exist in cache.

追梦小窝 2019-05-14 16:40:57 1307浏览 0条评论
首页/ 正文
分享到: / / / /

代码如下,然后就出现了问题 

<?php

namespace App\Http\Controllers\Wechat;

use App\Models\OfficialAccount;
use EasyWeChat\Factory;
use App\Models\IszmxwLog;
use EasyWeChat\OpenPlatform\Server\Guard;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class WechatController extends Controller
{
    protected $openPlatform;

    public function __construct()
    {
//        $config = [
//            'app_id' => 'wx5be4*****8e28',
//            'secret' => '43f487777**********b03cc47098a',
//            'token' => 'q***a',
//            'aes_key' => 'ckGPqhPfREgJ************f8Xv9QMm5ym3Yf'
//        ];

        $config = config('wechat.open_platform');

        $this->openPlatform = Factory::openPlatform($config);
    }

    /**
     * @param Request $request
     * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
     * 授权跳转链接
     */
    public function account_empower(Request $request)
    {
        $user_id = $request->get('user_id');

        $url = $this->openPlatform->getPreAuthorizationUrl('http://open.54zm.com/wechat/official_account/callback?user_id=' . $user_id);

        return redirect($url);
    }

}

报错如下

Credential "component_verify_ticket" does not exist in cache.

说缓存不存在,排查了很久,终于找到罪魁祸首了,我首先申明,我这里

用的是laravel5.5版本"laravel/framework": "5.5.*"

easywechat插件用的是"overtrue/laravel-wechat": "~4.0"


主要是由于$config的读取问题,用laravel框架自带的方式读取
$config = config('wechat.open_platform');
这样就会报哪个错误,直接手动配置,获取从数据库读取,就不会出错,
具体原因,不是很明白,我就换成了数据库读取配置文件,解决了就好了


最后修改:2020-06-20 13:03:23 © 著作权归作者所有
如果觉得我的文章对你有用,请随意赞赏
上一篇

发表评论

说点什么吧~

评论列表

扫一扫支付