使用Sanctum做API认证出现了问题,SQLSTATE[42S22]: Column not found: 1054 Unknown column 'api_token' in...
laravel/sanctum v2.14.2
当运行
Auth::user();
的时候正常。
当设置看守器为api的时候报一下错误
Auth::guard('api')->user();
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'api_token' in 'where clause' (SQL: select * from `users` where `api_token` = 5|upnFrAnnUblhRPIrV6USsx7YW4uT8yh6mNwOYCbH limit 1)
当设置看守器为web的时候结果为null。
这我有有点看不懂了,看守器就api和web两个。怎么自己设置任何一个的时候获取不到数据?
你确定这个
api_token
不是你们自己加的验证吗?Scantum
可没往Users
表里面加字段啊。vendor/laravel/sanctum/src/Guard.php
__invoke
supportsTokens
关键词给你了。
这最佳答案是否过于离谱?
sanctum默认是web,你这个api_token从何而来,就得自己好好检查代码了
我也遇到了这个问题,我的处理方式是:
../config/sanctum.php
楼主有解决吗?我也遇到这个问题,好奇怪,按文档来写,不知道这个问题出现在哪里