2017-08-04 69 views
3

我在5.4上有一個標準的Laravel Passport安裝程序 - 它一切正常並且正在生成令牌。將自定義中間件添加到Laravel Passport端點

我保護使用身份驗證我的API路線:API中間件以及一個檢查,在請求特定的頭文件是否存在且有效的任何請求被處理之前定製的中間件。這個中間件適用於API路由組。

是否有辦法「... /的OAuth /令牌」在這個中間件包裹由laravel產生的護照路線呢?

目前我在AuthServiceProvider.php啓動設置路由()方法:

public function boot() 
{ 
    $this->registerPolicies(); 

    // Passport/OAuth 
    Passport::routes(function ($router) { 
     $router->forAccessTokens(); 
     $router->forTransientTokens(); 
    }); 

    Passport::tokensExpireIn(Carbon::now()->addDays(7)); 

    Passport::refreshTokensExpireIn(Carbon::now()->addDays(30)); 
} 

的最終目標是,如果頭是不存在的OAuth端點會返回一個錯誤。

回答

2

app/Providers/AuthServiceProvider包括路線門面在頂部的某處添加此使用的語句:

use Illuminate\Support\Facades\Route; 

然後在boot()方法,把路線::組內的護照::路由()()像這樣:

Route::group(['middleware'=>'MyFunkyCustomMiddleware'], function(){ 
    Passport::routes(); // <-- Replace this with your own version 
}); 

希望幫助!

相關問題