Menu
本书未发布

11.3. 使用 Passport 认证

使用 Passport 认证

这一节我们将现有的接口实现,由之前 JWT 授权方式, 更替为 Passport 的 Oauth2 授权。

登录接口

调整接口

Passport 提供的默认路由为 http://larabbs.test/oauth/token ,而我们的现在接口统一都有 /api 的前缀,所以我们不使用 Passport 默认的路由,依然使用 /api/authorizations。先来修改登录接口:

app/Http/Controllers/Api/AuthorizationsController.php

.
.
.
use Zend\Diactoros\Response as Psr7Response;
use Psr\Http\Message\ServerRequestInterface;
use League\OAuth2\Server\Exception\OAuthServerException;
use League\OAuth2\Server\AuthorizationServer;
.
.
.
public function store(AuthorizationRequest $originRequest, AuthorizationServer $server, ServerRequestInterface $serverRequest)
{
    try {
       return $server->respondToAccessTokenRequest($serverRequest, new Psr7Response)->withStatus(201);
    } catch(OAuthServerExcep...

本文章首发在 Laravel China 社区

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
讨论数量: 17

江渚之上
Passport Token 刷新的时候报错?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
stefen
删除 token 后, 再次重复删除 token 的请求报以下错误?
1 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
QYlaravel
不用 DingoApi 如何 删除 Token?
0 个点赞 | 8 个回复 | 问答 | 课程版本 5.5
zhangatle
client_secret 泄露的问题,怎么不让用户看到?
0 个点赞 | 5 个回复 | 问答 | 课程版本 5.5
seeker
定义好 findForPassport 后,再次尝试使用手机登录 报错??
0 个点赞 | 6 个回复 | 问答 | 课程版本 5.5
woowli
使用 passport 的登录,获取用户模型为 NULL?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
surest
关于 getAuthorizationMethod () 这个方法的作用是?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
girl-manong
最上方,注入 ServerRequestInterface 返回,会有跨域问题?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
清欢
根据 AccessToken 获取用户个人信息时报错
0 个点赞 | 7 个回复 | 问答 | 课程版本 5.5
_seven
url
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
iVerywang
通过密码登录 不使用 client_id 和 client_secret 怎么实现?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
iVerywang
报错 401 The user credentials were incorrect.
0 个点赞 | 0 个回复 | 问答 | 课程版本 5.5
Bennent_G
passport 客户端模式(client_credentials),调用其 JSON API 出错
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
szwss
刻意练习,每日精进。
0
点赞
241
浏览
17
讨论