AuthorizationsController.php 里的 Auth::guard ('API')->getUser ()?

// 获取对应的用户
$user = Auth::guard('api')->getUser();
$attributes['weapp_openid'] = $data['openid'];

我想问下这里getUser()和user()方法的不同,我查过Guard::user()描述,说的是:

Get the currently authenticated user.
Return Value
Authenticatable|null

而Guard::getUser()说的是:

Return the currently cached user.
Return Value
Authenticatable|null

不是很理解这其中的意思

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
liyu001989
最佳答案

可以看看代码啊

    public function user()
    {
        if ($this->user !== null) {
            return $this->user;
        }

        if ($this->jwt->setRequest($this->request)->getToken() &&
            ($payload = $this->jwt->check(true)) &&
            $this->validateSubject()
        ) {
            return $this->user = $this->provider->retrieveById($payload['sub']);
        }
    }

    public function getUser()
    {
        return $this->user;
    }
5年前 评论
讨论数量: 2
liyu001989

可以看看代码啊

    public function user()
    {
        if ($this->user !== null) {
            return $this->user;
        }

        if ($this->jwt->setRequest($this->request)->getToken() &&
            ($payload = $this->jwt->check(true)) &&
            $this->validateSubject()
        ) {
            return $this->user = $this->provider->retrieveById($payload['sub']);
        }
    }

    public function getUser()
    {
        return $this->user;
    }
5年前 评论
luckwang

@liyu001989 大概知道了,谢谢。

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!