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

Laravel表单中@csrf被识别为普通HTML文本无法生效问题求助

可能的原因及对应解决方法:

  • 文件后缀不符合Blade解析要求
    Laravel的@开头的Blade指令仅会在后缀为.blade.php的模板文件中被解析,如果你当前表单所在的模板文件仅为.php后缀,没有加.blade标识,Blade引擎不会处理@csrf指令,会直接将其作为普通文本输出。
  • 表单区域被禁止解析Blade指令
    检查表单代码所在位置的上层代码,是否被@verbatim指令包裹,该指令的作用就是标记区域内的Blade语法不被解析,原样输出。另外也排查是否有人把@csrf写在了Blade变量输出语法里,比如写成了{{ '@csrf' }},也会导致原样输出。
  • 指令存在不可见特殊字符
    如果是从其他地方复制粘贴的@csrf代码,有可能携带了零宽空格之类的不可见特殊字符,夹在@和csrf中间,导致Blade无法识别这是合法指令。可以手动删除后重新手打一遍@csrf测试。
  • 模板加载错误
    排查当前页面实际渲染的模板文件是否是你修改的那份,有可能存在路径配置错误、多套模板的情况,实际生效的模板文件里的代码和你贴出来的不一致。

临时替代方案

如果暂时排查不出根因,可以直接用原生写法代替@csrf,功能完全一致:

<input type="hidden" name="_token" value="{{ csrf_token() }}">

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 07:39:05