问答 / 0 / 6 / 创建于 3年前 / 更新于 3年前
laravel 8.6 使用jwt怎么区分api和admin?admin.php 路由api.php 路由鉴权中间件Kernel.php
报错信息
public function getJWTCustomClaims() { return []; }
在这个方法里增加 自定义键值
Auth::guard('api')->claims(['flag' => 'Api'])->login($user); Auth::guard('api')->claims(['flag' => 'Admin'])->login($user); if (Auth::guard('api')->payload()->get('flag') === 'Admin') { .... }
Laravel 自带的Passport 不支持多个。他的token表里没有区分是哪个用户表提供的数据,如果你强行多个表公用一个token,你分不出来 user_id 属于哪个用户表的用户。
建议后端使用jwt,用户端还是单独一套token颁发机制。因为前端可能涉及多端在线或者单点登陆等多方面可变性功能
我要举报该,理由是:
在这个方法里增加 自定义键值
Laravel 自带的Passport 不支持多个。他的token表里没有区分是哪个用户表提供的数据,如果你强行多个表公用一个token,你分不出来 user_id 属于哪个用户表的用户。
建议后端使用jwt,用户端还是单独一套token颁发机制。因为前端可能涉及多端在线或者单点登陆等多方面可变性功能