重定向到路线而没有得到Laravel的参数

Rod*_*rik 4 php routing get laravel laravel-5.3

我有一些带有参数的遗留网址,我希望在没有这些参数的情况下重定向到路由.

在我的web.php中我有:

Route::get('/', ['as' => 'welcome', 'uses' => 'PageController@welcome']);
Run Code Online (Sandbox Code Playgroud)

http://example.com/?page_id=5等网址应重定向(302)到http://example.com/.

在控制器中我尝试了以下内容:

public function welcome(Request $request)
{
    if($request->has('page_id')) {

        redirect()->to('welcome', 302);
    }

    return view('welcome');
}
Run Code Online (Sandbox Code Playgroud)

它到达重定向但是网址仍然包含?page_id = 5.就像是:

redirect()->to('welcome', 302)->with('page_id', null);
Run Code Online (Sandbox Code Playgroud)

没有任何区别.Laravel 5.3中使用参数重定向页面的最佳方法是什么?一个没有参数?

Sau*_*ogi 5

您应该returnredirect()方法前面使用它来使其工作:

public function welcome(Request $request)
{
    if($request->has('page_id')) {

        return redirect()->route('welcome');
    }

    return view('welcome');
}
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!