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

Laravel中POST提交表单跳转路由报错:不支持GET方法

问题分析与解决

错误提示显示你尝试用GET方法访问profile-list路由,但系统识别该路由仅支持POST方法——这和你在web.php里定义的GET路由矛盾,核心原因及解决办法如下:

1. 同名路由被覆盖

检查所有路由文件(包括引入的外部路由),是否存在后定义的同名POST路由覆盖了现有GET路由。Laravel中后定义的同名路由会替换之前的,比如如果有类似代码出现在你的GET路由之后:

Route::post('/profile/{username}/{mobilenumber?}', [ProfileController::class, 'xxx'])->name('profile-list');

就会导致profile-list路由仅支持POST,GET请求自然报错。

2. 路由缓存未更新

如果之前执行过php artisan route:cache生成路由缓存,后续修改路由后未清除缓存,系统会一直使用旧的路由配置。执行命令清除缓存:

php artisan route:clear

之后重新测试即可。

3. 验证路由实际配置

运行php artisan route:list命令,查看输出中profile-list路由的请求方法和路径,确认它确实是GET方法、路径为/profile/{username}/{mobilenumber?}。如果输出显示为POST,那就是上述1或2的问题导致的。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 06:43:11