P粉5579579702023-08-15 11:18:45
這是預設行為。所以為了實現你想要的結果,你可以將它們列入黑名單。當使用者嘗試使用一個令牌時,你可以檢查它是否在黑名單中。如果是的話,你可以拒絕它。
你可以透過建立一個中間件來實現這一點,該中間件會檢查令牌是否在黑名單中,並將該中間件應用於需要令牌驗證的路由。
中介軟體:
public function handle($request, Closure $next) { $token = $request->bearerToken(); if (TokenBlacklist::where('token', $token)->exists()) { return response()->json(['message' => '令牌已失效'], 401); } return $next($request); }
然而,只有在你的系統實際需要時才應該這樣做。
P粉7680455222023-08-15 00:53:41
在建立後,您無法手動使令牌過期。這就是令牌的工作原理。如果您建立了令牌,它將在過期之前有效,但您可以建立令牌的黑名單,每次刷新令牌時,將第一個令牌新增到黑名單中,也可以考慮降低令牌的生命週期(如果足夠低),您可以依靠自動過期機制。