Laravel 10 Passport个人访问客户端API鉴权401未授权求助
Laravel 10 Passport 401 未授权问题排查方案
以下是你可能遗漏的配置点,逐一排查:
确认API Guard驱动配置
打开config/auth.php,检查guards下的api项是否使用passport驱动:'guards' => [ 'api' => [ 'driver' => 'passport', 'provider' => 'users', ], ],验证用户模型Trait
确保你的User模型引入了HasApiTokenstrait:use Laravel\Passport\HasApiTokens; class User extends Authenticatable { use HasApiTokens, HasFactory, Notifiable; }检查Passport中间件注册
查看app/Http/Kernel.php的$routeMiddleware,确认存在对应中间件:'auth:api' => \Laravel\Passport\Http\Middleware\CheckClientCredentials::class,确认令牌类型正确
你使用的是个人访问客户端,需确保生成的是个人访问令牌,生成命令:php artisan passport:client --personal不要混淆成客户端凭证令牌。
校验请求头格式
Postman的Authorization头必须严格遵循Bearer {token}格式,注意Bearer后有且仅有一个空格,建议直接在Postman的Authorization选项卡选择Bearer Token类型填入令牌,避免手动输入错误。核对路由实际地址
执行php artisan route:list查看路由列表,确认/api/others/info1是否存在且正确绑定了auth:api中间件,若路由未被包含在prefix('api')分组内,实际请求地址应为localhost:8000/others/info1。清除配置缓存
执行以下命令刷新缓存,避免旧配置干扰:php artisan config:clear php artisan route:clear php artisan cache:clear
内容的提问来源于stack exchange,提问作者user4661864
相关产品推荐
相关产品推荐

