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

Laravel中PUT请求返回CSRF token mismatch问题求助

解决Laravel API POST/PUT请求CSRF token mismatch问题

针对无前端、用Postman测试CRUD API遇到的CSRF验证报错问题,给你几个实用的解决办法:

方法一:将路由移至api.php(推荐)

Laravel的api.php路由默认被api中间件组包裹,该组自动跳过CSRF验证,是专门为API场景设计的:

  • 把web.php里的Route::resource('posts', PostController::class);移到api.php
  • 测试时请求路径改为http://127.0.0.1:8000/api/posts

方法二:在CSRF中间件中排除指定路由

如果必须保留web.php里的路由,可修改VerifyCsrfToken中间件,让目标路由绕过CSRF验证:

  1. 打开app/Http/Middleware/VerifyCsrfToken.php
  2. 在$except数组中添加你的路由规则,示例:
protected $except = [
    'posts/*', // 排除posts下所有子路由
    // 也可指定单个请求:'posts/store', 'posts/update'
];

方法三:手动在Postman中携带CSRF Token(可选)

如果不想修改路由或中间件,也可以手动获取并携带Token:

  • 先发送GET请求到http://127.0.0.1:8000/posts,从响应Cookie中找到XSRF-TOKEN
  • 在Postman的请求头里添加X-XSRF-TOKEN字段,值为刚才获取的Token内容

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 15:39:51