Laravel 5 - Перенаправление в контроллере не работает в вызове AJAX - PullRequest
0 голосов
/ 01 декабря 2018

Важно : это происходит из-за вызова ajax.

Все отлично работает, кроме:

use Illuminate\Routing\Redirector;

public function my_call() {
 return redirect()->route('page-1');
}

Выдает ошибку 500.

обратный просмотр ('page-1') работает без проблем.Может кто-нибудь видит, что я делаю не так?

Спасибо.

Ответы [ 3 ]

0 голосов
/ 01 декабря 2018

Возможно, вы не сможете сделать это на стороне сервера, если сделаете AJAX вызов: /

Вот объяснение: https://laracasts.com/discuss/channels/vue/redirect-after-ajax-post-request

Это за vue, но я верю в этоприменяется универсально для AJAX.

0 голосов
/ 01 декабря 2018

В вашем методе контроллера сделайте что-то вроде:

public function my_call() {
    return response()->json([
      'redirect_to' => route('page-1')
    ]); 
}

И в вашем ajax успешном перенаправлении обратного вызова, используя js:

window.location = response.redirect_to

0 голосов
/ 01 декабря 2018

У вас есть фактический маршрут с именем, которое вы используете, вы не можете перенаправить на представление, так как они возвращаются маршрутами

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...