Php Laravel Passport-/oauth/token生成无效的token

Php Laravel Passport-/oauth/token生成无效的token,php,laravel,laravel-passport,Php,Laravel,Laravel Passport,因此,我使用php-artisan-passport:client创建了一个客户端,当我向oauth/token发出POST请求时,我很感激地得到了一个令牌 然而,当我试图通过将该令牌放在我的头中并转到一个auth:api受保护的路由来使用该令牌时,我得到了401个未经授权的消息 然而,使用不同的路径登录似乎是可行的。当我在api控制器中使用此路由时: Route::post('/login', 'Auth\LoginController@login')->name('login');

因此,我使用
php-artisan-passport:client
创建了一个客户端,当我向oauth/token发出POST请求时,我很感激地得到了一个令牌

然而,当我试图通过将该令牌放在我的头中并转到一个
auth:api
受保护的路由来使用该令牌时,我得到了401个未经授权的消息

然而,使用不同的路径登录似乎是可行的。当我在api控制器中使用此路由时:

Route::post('/login', 'Auth\LoginController@login')->name('login');
其代码如下:

public function login(Request $request) {
    $input = $request->all();

    if (Auth::attempt(['email' => $input['email'], 'password' => $input['password'] ])) {
        $user = Auth::user();

        return [
            'success' => true,
            'token' => $user->createToken('test')->accessToken
        ];
    }

    return [
        'success' => false,
        'message' => 'unable to authenticate'
    ];
}
我得到一个在受保护的路由上工作的令牌

我正在使用Postman进行测试,我有标题
Authorization:Bearer
Accept:application/json
。不知道为什么它以一种方式工作,而不是另一种方式

编辑:以下是受保护的路由:

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

'api' => [
    'driver' => 'passport',
    'provider' => 'users',
],

在我的例子中,从WHM服务器和函数中删除Lsapi组件。

在我的例子中,从WHM服务器和函数中删除Lsapi组件。

你们其余的
api
中间件包含什么?我更新了我的问题。你们检查了返回的令牌是否存在于数据库中了吗?此外,您还传入了一个空的scopes,这可能也会影响一些事情。确实如此,但我注意到该令牌的user_id列为null。但是,我用来进行身份验证的客户端有一个与之关联的用户id。您刚刚回答了自己的问题,您需要弄清楚为什么未设置
用户id
。其他
api
中间件包含什么?我更新了我的问题。您是否检查了数据库中是否存在返回的令牌?此外,您还传入了一个空的scopes,这可能也会影响一些事情。确实如此,但我注意到该令牌的user_id列为null。但是,我用来进行身份验证的客户端有一个与之关联的用户id。您刚刚回答了自己的问题,您需要弄清楚为什么未设置
用户id
。感谢您的贡献。请添加上下文,并解释为什么这可能是一个解决方案。如果这样做是有意义的,也请解释如何这样做。实际上,您的回答可能更有用,作为对OP的评论,根据SO指南,可能不被视为完整和正确的回答。一个有用的答案是一个自包含的解决方案,它可以让未来的访问者获得更多的知识,他们可以将这些知识应用到自己的情况中。高质量的信息性答案更有可能被升级,而低质量的答案则有可能被下载,或者被完全删除。感谢您的贡献。请添加上下文,并解释为什么这可能是一个解决方案。如果这样做是有意义的,也请解释如何这样做。实际上,您的回答可能更有用,作为对OP的评论,根据SO指南,可能不被视为完整和正确的回答。一个有用的答案是一个自包含的解决方案,它可以让未来的访问者获得更多的知识,他们可以将这些知识应用到自己的情况中。高质量的信息性答案更有可能被升级,而低质量的答案则有可能被下载,或者被完全删除。