Laravel 5.8护照注销方法(未经验证)

Laravel 5.8护照注销方法(未经验证),laravel,laravel-passport,bearer-token,Laravel,Laravel Passport,Bearer Token,当我调用route/api/logout获得未经验证的时,我已经从/api/login方法中获得了令牌,而且当我尝试使用相同的中间件运行demo请求时,它工作得非常好 我尝试了类似演示的请求: 路由(在带有api前缀的api.php中) 简单注销功能 在路由中间件中使用Auth API时,是否确定您的Auth是正确的 而不是auth()->user()->令牌 useauth('api')->user()->tokensauth()是一个辅助函数,您无法传递所用auth的参数 特别是如果您使

当我调用route
/api/logout
获得未经验证的
时,我已经从
/api/login
方法中获得了令牌,而且当我尝试使用相同的
中间件运行demo请求时,它工作得非常好

  • 我尝试了类似演示的请求:
路由(在带有api前缀的api.php中)

简单注销功能


在路由中间件中使用Auth API时,是否确定您的Auth是正确的

而不是
auth()->user()->令牌

use
auth('api')->user()->tokens

auth()
是一个辅助函数,您无法传递所用auth的参数

特别是如果您使用多个身份验证系统,那么您应该确定哪个身份验证

因此,请确保您从api auth注销,而不是默认的auth write

public function logout( )
    {
        auth('api')->user()->tokens->each(function ($token, $key) {
            $token->delete();
        });

        return response()->json('Logged out', 200);
    }


Route::middleware('auth:api')->post('/logout', 'PassportAuthController@logout')->name('api.auth.logout');
public function logout( )
    {
        auth()->user()->tokens->each(function ($token, $key) {
            $token->delete();
        });

        return response()->json('Logged out', 200);
    }
public function logout( )
    {
        auth('api')->user()->tokens->each(function ($token, $key) {
            $token->delete();
        });

        return response()->json('Logged out', 200);
    }