You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel+Vite(React)登录认证419错误,XSRF-TOKEN未传递

解决Laravel + Vite React登录419错误及XSRF-TOKEN未传递问题

问题核心

419错误是Laravel CSRF验证失败导致的,根源在于前端未先获取Laravel生成的XSRF-TOKEN Cookie,使得登录请求缺少有效验证凭证。

具体解决步骤

1. 前端提前请求CSRF Cookie生成接口

Laravel Sanctum要求前端先调用/sanctum/csrf-cookie接口,触发服务端生成并下发XSRF-TOKEN Cookie,之后的POST请求才能通过验证。修改登录提交逻辑:

const handleSubmit = async (event) => {
    event.preventDefault(); 
    try { 
       // 先获取CSRF Cookie
       await axios.get('/sanctum/csrf-cookie');
       // 再发送登录请求
       await axios.post('/login',{email,password});
       setEmail("");
       setPassword("");
       useNavigate("/");
    }
    catch (error) {
        console.log(error);
    }  
};

2. 修正.env的SESSION_DOMAIN配置

本地开发环境下,将SESSION_DOMAIN设为localhost,确保Cookie能被前端正确读取:

SESSION_DOMAIN=localhost

3. 清理Laravel配置缓存

修改配置后执行以下命令,确保新配置生效:

php artisan config:clear

4. 确认Axios配置有效性

你的Axios实例已设置withCredentials: true,这会让浏览器自动携带Cookie,无需额外修改,只需保证baseURL与Laravel的APP_URL一致即可。

完成以上操作后,重启Laravel服务和Vite开发服务器,重新测试登录即可解决419错误。

内容的提问来源于stack exchange,提问作者Jonika

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 16:23:31