Laravel Sanctum水疗验证注销不起作用

我在我的Vue项目中使用Laravel Sanctum Spa身份验证。一切都很好,但即使在注销之后,

Auth::logout()

我仍然能够从中间件内的API路由获得数据

Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
    return $request->user();
});

注销后我应该无法获取数据。它应该显示401未经身份验证,但事实并非如此。如何解决这个问题。我在这里被困了3天。我也遵循了Laravel文档和其他教程,但是每个人都像我一样登录。

stack overflow Laravel sanctum SPA authentication logout is not working
原文答案

答案:

作者头像

要注销,用户只需在注销函数中执行此操作即可删除所有用户令牌

public function logout(Request $request) {
auth()->user()->tokens()->delete();
}

或用户仅删除活动令牌

$request->user()->currentAccessToken()->delete();