重新搭建新的 laravel 项目,发现之前的 laravel passport 笔记,挺重要的一个知识点,博客没记,补上!
项目中使用 password 来生成 token,但是有其他需求,例如: 1.使用 '手机号/验证码' 登录
2.通过三方登录
这些都不是 password 方法,这些我们可以自己来验证用户登录,然后通过登录用户的 id,给这些用户来分配 token
百度查了半天没找到,只能在 google 上搜索,不得不说,程序这东西,还是 google 给力,基本都能找到解决方法:
英语太差,但是只要大概单词没啥问题,都能搜索到类似的,我的关键词如下: laravel passport get token by user id, not password
参考文章: github.com/laravel/pas… github.com/laravel/pas…
解决方案: github.com/laravel/pas…
注意点: 1.代码中 use App\Entities\User;
改为我们自己项目的 User 模型路径
2.可能会出现权限错误:
"Key file "file:///xxx/storage/oauth-private.key" permissions are not correct, should be 600 or 660 instead of 777"
chmod -R 660 /xxx/storage/oatuh*
同时得确保 /xxx/storage/oatuh* 对 www 用户有权限
chown -R www:www /xxx/storage/oatuh*