我正在嘗試在我的laravel應用程式中驗證api呼叫。我已經按照檔案安裝了Passport,我想我沒有錯過任何東西。但API呼叫回傳401未認證。
Auth.php
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'user',
],
'api' => [
'driver' => ' passport',
'供應商' => '用戶'。
'hash' => false,
],
],
AuthServiceProvider.php
public function boot() /span>{
$this->registerPolicies()。
Passport::tokensExpireIn(now()->addMinutes(config('auth.token_expiration.token'))。
Passport::refreshTokensExpireIn(now()->addMinutes(config('auth.token_expiration.refresh_token'))。
}
RouteServiceProvider
$this->configureRateLimiting()。
$this->routes(function (/span>) {
Route::prefix('api')
->中間件('api')
->namespace($this->namespace)
->group(base_path('routes/api.php'))。
Route::middleware('web')
->namespace($this->namespace)
->group(base_path('route/web.php'))。
});
頭條
和.htaccess
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 。
uj5u.com熱心網友回復:
將這段代碼添加到根檔案夾的.htaccess(不僅僅是在公共檔案夾內)
RewriteCond %{HTTP:Authorization} ^(. )$
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]。
uj5u.com熱心網友回復:
看起來你需要注冊必要的路由來發行令牌。簡單地說,你在boot方法中呼叫Passport::routes方法。
public function boot() /span>{
$this->registerPolicies()。
Passport::routes()。
Passport::tokensExpireIn(now()->addMinutes(config('auth.token_expiration.token'))。
Passport::refreshTokensExpireIn(now()->addMinutes(config('auth.token_expiration.refresh_token'))。
}
如果你有任何問題,告訴我。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/332456.html
標籤:

