You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 11与Passport报错:No supported authentication provider found for Token

问题描述

使用Laravel 11搭配Laravel Passport 11.x实现API认证,已完成OAuth2认证和个人访问令牌配置,但使用个人访问令牌请求受保护路由时触发错误:

InvalidArgumentException: No supported authentication provider found for token.

已完成的配置步骤:

  • 发布迁移文件并执行 php artisan migrate 创建所需数据表
  • 运行 php artisan passport:install 完成Passport安装

运行环境:PHP 8.1

相关代码如下:

AuthController生成令牌代码

use Laravel\Passport\PersonalAccessTokenResult;

public function login(Request $request)
{
    $request->validate([
        'email' => 'required|email',
        'password' => 'required',
    ]);

    $user = User::where('email', $request->email)->first();

    if ($user && Hash::check($request->password, $user->password)) {
        $token = $user->createToken('Personal Access Token')->accessToken;

        return response()->json(['token' => $token]);
    }

    return response()->json(['error' => 'Unauthorized'], 401);
}

受保护路由代码

Route::middleware('auth:api')->get('/user', function (Request $request) {
    return response()->json($request->user());
});
错误成因
  1. API Guard驱动未配置为Passport:Laravel 11默认的api guard驱动为sanctum,而非passport,导致系统无法识别Passport生成的个人访问令牌。
  2. 未手动注册Passport路由:Laravel 11移除了Passport路由的自动注册逻辑,若未手动注册,认证流程无法正常解析令牌。
  3. 请求头格式错误:发送请求时未正确携带Authorization头,或未遵循Bearer {token}的格式要求。
修复方案

1. 修改API Guard驱动配置

打开config/auth.php,将guards下的api驱动改为passport:

'guards' => [
    'web' => [
        'driver' => 'session',
        'provider' => 'users',
    ],

    'api' => [
        'driver' => 'passport', // 替换为passport
        'provider' => 'users',
    ],
],

2. 在AuthServiceProvider中注册Passport路由

打开app/Providers/AuthServiceProvider.php,在boot方法中添加路由注册代码:

use Laravel\Passport\Passport;

public function boot(): void
{
    $this->registerPolicies();

    // 注册Passport认证相关路由
    Passport::routes();
}

3. 规范请求头格式

发送请求时,在Authorization请求头中携带令牌,格式必须为:

Authorization: Bearer {你的个人访问令牌}

4. 清除配置缓存(推荐)

执行以下命令清除配置缓存,确保所有修改生效:

php artisan config:clear

内容的提问来源于stack exchange,提问作者Sandy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 17:23:09