【问题标题】:Laravel passport: Manually create access tokenLaravel 护照:手动创建访问令牌
【发布时间】:2019-03-21 09:36:00
【问题描述】:

我正在使用 VueJS 和 Laravel 构建一个 SPA。

我正在使用 Laravel 护照登录,效果很好。

但是,我希望能够向用户发送用于登录的魔术链接。但是,我不确定如何在不向 oauth 路由发送带有密码的请求的情况下创建访问令牌。

看起来应该很容易做到,只需将正确的行插入oauth_access_tokensoauth_refresh_tokens

但我一直在浏览 Passport 存储库中的代码和 Google 结果,一切似乎都更加复杂。

我想要的是能够做这样的事情:

$user = User::findFromMagicLink($link);
$token = $user->createAccessToken();
return response()->json(['access_token' => $token->token, 'refresh_token' => $token->refresh_token])

我猜这是不可能的,否则它会记录在某处。但如果它比这更复杂,我想不通。

谁能指出我正确的方向?

【问题讨论】:

    标签: laravel laravel-5 vue.js vuejs2 single-page-application


    【解决方案1】:

    试试这个你可以像这样创建访问令牌

    $user = User::findFromMagicLink($link)
    $token  = $user->createToken('UserToken', ['*']);
    //or directly access
    $token  = $user->createToken('UserToken', ['*'])->accessToken;
    

    更多信息请阅读:Manage personal access token

    【讨论】:

    • 编辑:对不起,我误解了一些东西。一旦我再次检查,将发表评论。
    • 您可以在此处阅读:github.com/laravel/passport/issues/71 您可以创建自定义方法,但这不是好方法
    • 感谢,这似乎实际上工作得很好!
    猜你喜欢
    • 2020-01-14
    • 2018-06-02
    • 2020-09-21
    • 2019-11-17
    • 2021-07-16
    • 2023-01-24
    • 2020-12-18
    • 2021-01-14
    • 2017-03-22
    相关资源
    最近更新 更多