Перенаправление Laravel ничего не возвращает

#php #redirect #laravel

#php #перенаправление #laravel

Вопрос:

Я только начинаю работать в Laravel. Я пытаюсь выполнить простое перенаправление, однако в ответ получаю пустую страницу, и браузер не перенаправляется.

 Route::get('last', [
    'as' => 'theLast',
    function(){
        Redirect::route('theFirst');
    }
]);

Route::get('first', [
    'as' => 'theFirst',
    function(){
        return 'First';
}
  

Когда я нажимаю /first , я получаю ‘First’ в ответ, как и ожидалось.
Однако, когда я нажимаю /last , я ожидаю, что меня перенаправят на / first , но я не перенаправляюсь, и я нажимаю / last без ошибки, но с пустой страницей.
На случай, если это имеет значение, я использую php5.5.10.

Ответ №1:

вам нужно вернуть ответ;

 return Redirect::route('theFirst');
  

Комментарии:

1. Хорошо, я понимаю. Я понял, что перенаправляю на другой маршрут, и именно этот маршрут выполняет фактический возврат.

2. @Ben Нет, это не так, класс ответа Laravel возвращает заголовок (‘Location’), все, что ::route() ищет путь для перенаправления.