我有一个包含 Laravel 和 Vue.js 的应用程序,用于单独的文件夹,其中一个用于后端,另一个用于前端,我已经成功地按照 Laravel sanctum 文档配置了所有内容并保护了路由 API,我能够成功登录并注册但成功登录后,当我尝试获取经过身份验证的用户时,它向我显示“未经身份验证”。我使用 localhost 作为默认值。谁能给我一些建议
.env 文件我也设置了
SESSION_DRIVER=cookie
SESSION_DOMAIN=localhost
SANCTUM_STATEFUL_DOMAINS=localhost:8000
谢谢
答案 0 :(得分:0)
不幸的是,我找到了解决方案
#localhost
SESSION_DRIVER=cookie
SANCTUM_STATEFUL_DOMAINS=localhost:8080,127.0.0.1:8080,localhost:3000,127.0.0.1:3000
SESSION_DOMAIN=localhost
localhost:8080
对于前端服务器,端口有时可能会发生变化,例如 localhost:8081
localhost:3000
,因此请确保输入正确的 URL
#Live Server
SANCTUM_STATEFUL_DOMAINS=*.yourdomain.com
SESSION_DOMAIN=.yourdomain.com
我也发现有时我是对的,但 Laravel 缓存给了我错误的结果,所以你必须清理 Laravel 缓存和浏览器缓存。您可以按照以下代码在 web.php
Route::get('/clear', function() {
Artisan::call('cache:clear');
Artisan::call('config:clear');
Artisan::call('config:cache');
Artisan::call('view:clear');
return "Cleared!";
});
希望它会起作用
谢谢