我是按照Laravel官方文档一步一步来的。
当我向 {{host}}/api/login 发送请求时,我可以收到包含令牌的响应。一切都是正确的。
但是当我尝试向 {{host}}/api/user 发送请求时,它总是未经身份验证。
我多次检查代码,无法修复。
在我的 .env 文件中,我设置如下,我的后端主机是 http://laravel_8_api.test
SESSION_DOMAIN=.laravel_8_api.test SANCTUM_STATEFUL_DOMAINS=.laravel_8_api.test
我怎样才能让它工作?请帮我。 The postman request screenshot
代码在这个链接“https://github.com/ramseyjiang/laravel_8_api”
答案 0 :(得分:1)
//api.php
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
return $request->user();
});
中间件应该是 auth:sanctum
而不是 of auth:api
答案 1 :(得分:-1)
官方文档中忘记修改config/auth.php
function mymodule_imagemagick_alter($op, $filepath, &$args) {
# altering $args...
}
之后,它将解决此问题。
不需要修改api.php中的代码 我的意思是它不需要将 auth:sanctum 更改为 auth:api,如果更改它,它将导致另一个问题,因为链接 Laravel Sanctum : column not found: 1054 Unknown column 'api_token' in 'where clause'