2017-07-08 531 views
2

我使用Larave 5.4護照來創建SPA應用程序。但是,我能夠使認證工作。但訪問令牌始終是600秒到期時間的短期令牌。Laravel Passport tokensExpireIn似乎不起作用

我不能增加到期時間:

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

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

它沒有任何效果可言。

有幫助嗎?提前致謝。

回答

0

之前我有同樣的問題對我的申請,我花了兩天時間試圖找出是什麼問題,最好的解決方案,我想出了是直接更改過期日期在PassportServiceProvider

轉到供應商/ laravel /護照/ src目錄/ PassportServiceProvider.php線108

new PersonalAccessGrant, new DateInterval('P1Y') 

例如對到期日期設置爲一週

new PersonalAccessGrant, new DateInterval('P1W') 

我知道這是固定的問題不好解決,最近我發現Laravel的Git回購

https://github.com/laravel/passport/issues/47

+0

它正在工作。謝謝。這不是一個理想的解決方案,但它的工作正常。 –

0

相同的問題護照同意令牌

Passport::tokensExpireIn(Carbon::now()->addDays(10)); 
    Passport::refreshTokensExpireIn(Carbon::now()->addDays(15)); 

這隻會增加10分鐘的到期時間。不知道如何和爲什麼,而是改變內部代碼。我改變了

Passport::tokensExpireIn(Carbon::now()->addDays(10000)); 
    Passport::refreshTokensExpireIn(Carbon::now()->addDays(12000)); 

現在它增加了7天的失效時間。看起來像addDays功能添加10000分鐘。