【发布时间】:2018-10-09 05:25:03
【问题描述】:
我正在使用 Laravel 5.4 Passport 作为个人令牌。我正在尝试使用 Postman 向 /api/user 发送 GET 请求。我通过向 /oauth/personal-access-tokens 发送 GET 请求来获取我的令牌。从该响应中,我获取了我认为是令牌的内容,然后我在 Postman 中设置了一个 GET 请求,例如文档 say 添加 Accept => application/json 和 Authorization => Bearer 令牌。下面是一个例子:
登录后,我在浏览器中转到http://192.168.10.15/oauth/personal-access-tokens,我看到以下内容:
[
{
"id": "96a494affb39097a562e12e53a32c028cb9b9b481ba4e92ca9fa35df6361583ff9bf3422268345aa",
"user_id": 1,
"client_id": 1,
"name": "API-Token",
"scopes": [
],
"revoked": false,
"created_at": "2018-04-28 14:50:02",
"updated_at": "2018-04-28 14:50:02",
"expires_at": "2019-04-28 14:50:02",
"client": {
"id": 1,
"user_id": null,
"name": "Test Site Personal Access Client",
"redirect": "http:\/\/localhost",
"personal_access_client": true,
"password_client": false,
"revoked": false,
"created_at": "2018-04-28 14:49:18",
"updated_at": "2018-04-28 14:49:18"
}
}
]
我猜令牌是 id?!?!?好像很短。
这是我的 api.php 文件:
Route::get('/user', function (Request $request) {
return $request->user();
})->middleware('auth:api');
然后我从 /oauth/personal-access-tokens 复制令牌,并在我的 Postman Get 请求中使用它到下面的http://192.168.10.15/api/user:
我实际上是通过 /oauth/personal-access-tokens GET 请求获取令牌吗?如果我是为什么并且我收到未经身份验证的错误?
我已经检查了here 在 AuthServiceProvider.php boot() 中做了以下操作:
Passport::routes();
Passport::tokensExpireIn(Carbon::now()->addYears(20));
Passport::refreshTokensExpireIn(Carbon::now()->addYears(20));
Passport::pruneRevokedTokens();
我也设置为Consume My API with Javascript
感谢所有帮助! 如果需要任何其他信息来诊断此问题,请告诉我。
【问题讨论】:
标签: laravel postman laravel-passport