首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >灯塔GraphQL -如何在突变解析器中返回current_user?

灯塔GraphQL -如何在突变解析器中返回current_user?
EN

Stack Overflow用户
提问于 2020-11-17 19:51:00
回答 1查看 504关注 0票数 1

在我编写自定义变异解析器的情况下,当前必须从我的前端传递当前_ User的ID,以便能够在用户模型上执行::find。然而,理想的做法是能够使用current_user的实例,这样我就不必依赖于将ID传递给我的GraphQL服务器。

总的来说,我对Laravel和GraphQL的世界还是相当陌生的,然而,我在灯塔的文档中读到了提到@auth指令的内容,以及提到使用auth('api')->user()的其他StackOverflow应答,然而,这对我来说是空的。我还应该提到,如果有任何不同,我将使用灯塔-图文-护照-奥斯特库来处理用户身份验证。有人知道如何访问current_user吗?

代码语言:javascript
代码运行次数:0
运行
复制
public function __invoke($_, array $args)
    {
        // $user = \App\Models\User::find($args['id']); <--- not ideal
        $user = auth('api')->user(); <--- returns NULL
        var_dump($user);

        foreach ($user->notifications as $notification) {
            $notification->viewed = true;
            $notification->save();
        }

        $notifications = $user->notifications->toArray();

        return [
            'status' => 'Success',
            'notifications' => $notifications
        ];
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-18 05:16:25

我在灯塔中发现了一个有趣的部分--graphql护照-auth文档,其中讨论设置一个全局中间件来将登录用户插入到$context中。这与我所需要的完全一样,在将该行添加到文档中提到的lighthouse.php配置的中间件部分之后,我能够使用$context->user()返回当前登录的用户。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64882371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档