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

Vue+Laravel Sanctum请求报419 CSRF token mismatch错误如何解决

419 CSRF token mismatch 错误解决方案

核心问题原因

浏览器对localhost和127.0.0.1会识别为两个完全独立的站点,你当前配置中后端请求地址、Session域名、状态校验域名不统一,导致Sanctum下发的CSRF Cookie无法在请求中正确传递,出现校验失败。

具体修改步骤

1. 修正.env配置文件

将域名相关配置统一规则,修改如下:

SESSION_DRIVER=cookie
# 统一使用127.0.0.1作为根域名,匹配后端服务地址
SESSION_DOMAIN=127.0.0.1
# 补充前后端所有用到的域到状态校验白名单,不要带http/https前缀
SANCTUM_STATEFUL_DOMAINS=127.0.0.1:8000,localhost:8080,127.0.0.1:8080

修改完后执行php artisan config:clear清空Laravel配置缓存。

2. 保持前后端请求域名统一

两种方案二选一即可:

  • 方案1:将前端axios的baseURL改为http://localhost:8000,和原有localhost配置对齐
  • 方案2:按第一步的修改,保持baseURL为http://127.0.0.1:8000即可

3. 修正CORS配置(避免后续跨域问题)

开启supports_credentials时不允许使用通配符作为允许源,修改config/cors.php:

'allowed_origins' => ['http://localhost:8080', 'http://127.0.0.1:8080'],

修改后同样执行php artisan config:clear清空配置缓存。

4. 清理缓存重试

修改完所有配置后,清空浏览器的Cookie和本地缓存,重启前后端服务再测试即可。
如果仍然报错,检查是否开启了代理、VPN工具篡改了请求头的Cookie字段

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 18:18:02