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

调用store方法时提示仅支持DELETE请求的问题排查

问题原因及解决办法

核心原因:请求方法被伪造为DELETE,或请求路径错误导致路由匹配异常

你遇到的问题大概率是以下两种情况之一,导致Laravel误将你的POST提交判定为删除操作:

  • 排查1:表单残留伪造DELETE请求的隐藏字段
    打开页面源码,检查是否存在类似代码:

    <input type="hidden" name="_method" value="DELETE">
    

    Laravel通过这个字段实现HTTP请求方法伪造,只要存在该字段,哪怕用POST提交表单,框架也会按照DELETE方法处理请求。这种情况通常是之前删除表单的代码残留,或是复用了带该字段的组件导致的。

  • 排查2:请求路径或路由调用错误

    1. 执行php artisan route:list查看路由列表,确认categories.store对应POST /categories,categories.destroy对应DELETE /categories/{category};
    2. 打开浏览器开发者工具(F12),提交表单时查看网络请求:
      • 如果请求方法显示为DELETE,直接对应上面的_method字段问题;
      • 如果请求URL是/categories/{某个ID}而非/categories,说明你误将表单指向了单条分类的路径,此时DELETE请求会命中destroy路由,移除destroy后自然出现404。
  • 修正方案
    移除多余的_method隐藏字段,同时确保Inertia表单调用的路由正确,也可以直接传入生成的URL避免歧义:

    <form @submit.prevent="form.post(route('categories.store'))">
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 11:55:20