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

Laravel5配置GET路由获取URL查询参数报404错误如何解决

错误原因

你当前的路由配置存在两个问题:

  • 路由规则里的*通配符是用来匹配路径参数的,但你请求的路径/website/product-search-data没有后续路径段,term属于URL的查询参数,不属于路由路径的一部分,路由规则和实际请求路径不匹配导致404。
  • 控制器方法中直接声明$term参数是用来接收路由路径参数的,无法直接获取查询参数的值。

修复步骤

  1. 修正路由定义,删除多余的通配符:
Route::get('/website/product-search-data', 'websiteController@searchProductList');

注:Laravel规范中控制器类名应为大驼峰格式,如WebsiteController,请确认你的控制器文件名和类名保持一致。

  1. 修改控制器方法,通过Request实例获取查询参数term:
use Illuminate\Http\Request;

public function searchProductList(Request $request)
{
    // 获取term参数,第二个参数是参数不存在时的默认值
    $term = $request->input('term', '');
    dd($term);
}

如果你不想注入Request类,也可以使用Laravel提供的辅助函数直接获取:

public function searchProductList()
{
    $term = request('term', '');
    dd($term);
}

可选:参数校验

如果需要要求请求必须携带term参数,可以增加校验逻辑:

public function searchProductList(Request $request)
{
    $validated = $request->validate([
        'term' => 'required|string|min:1',
    ]);
    
    dd($validated['term']);
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 21:24:04