laravel socialite не принимает параметр GET для перенаправления на ту же страницу

У меня проблема с одним плагином Laravel, который называется Socialite, он позволяет пользователям моего сайта входить в систему с помощью facebook, twitter и т. Д. Мне нужна помощь

проблема в том, что после входа в систему он перенаправляется на страницу индекса, а посетитель страницы инициировал вход в систему ogin url /login?redirect=https://www... socialite не принимает этот параметр GET по умолчанию, логин laravel работает с этим параметром, но не Socialite

Я думаю, что он не поддерживает перенаправление, потому что URL-адрес обратного вызова установлен статическим в конфигурации, я не могу понять, как изменить его, чтобы использовать параметр GET с таможенными URL-адресами

class SocialAuthController extends Controller {
    public function redirect() {
        return Socialite::driver('facebook')->redirect();
    }

    public function callback(SocialAccountService $service) {
        $user = $service->createOrGetUser(Socialite::driver('facebook')->user()); auth()->login($user);
        return redirect()->to('/home');
    }
}

Как я могу разместить динамическую ссылку на этот intead of / home SO, чтобы он перенаправлял меня на ту же страницу, где я был до входа в систему. redirect () - ›to ('/ home')

Плагин Laravel Socialite после входа в систему через Facebook или Twitter перенаправляет на:

SocialAuthController.php

...
public function callback(SocialAccountService $service, $provider)
....
return redirect()->to('/');

Я хочу перенаправить посетителя на страницу, на которой был инициирован вход в систему, а не на статическую страницу '/'

Моя страница входа получает параметр GET /login?redirect=http://www.website.com/dynamic_url

Внесите изменения в код, который плагин Socialite перенаправляет после входа в систему, чтобы динамически устанавливать URL-адрес перенаправления.


person Hassaan    schedule 10.09.2016    source источник


Ответы (2)


Это действительно просто. Я ищу это сама. Мне никто не ответил, так что я думаю, что это было действительно неловко.

Итак, решение - return Redirect :: to (URL :: previous ());

person Hassaan    schedule 05.10.2016

Более простой способ сделать это:

return redirect()->back();

Удачного кодирования! : D

person Marinario Agalliu    schedule 22.10.2020