注册后,Laravel oauth用户重定向

时间:2017-04-06 10:17:53

标签: php laravel laravel-5 single-sign-on

所有。我只是尝试使用Laravel和护照应用程序实现单点登录服务器。

我想要实现的目标:单点登录服务器,它从客户端收听请求并根据请求的参数提供身份验证。

到目前为止我所取得的成就:只有当用户已经在SSO服务器上注册时,才会收听客户端请求并提供身份验证并重定向回客户端站点的SSO服务器

当用户未在SSO服务器上注册并尝试注册帐户时,问题就出现了。在这种情况下,Laravel注册用户并重定向回主页而不是客户端回调URL。 如果在Laravel中可以实现这一点,或者某人为此做了特别的事情,请告诉我。

1 个答案:

答案 0 :(得分:1)

这几乎是可以实现的,取决于你想要投入多少努力。

当用户注册时,您可以在会话中保存回调URL。

session(['callback' => $callback]);

注册后,将用户重定向到其回调网址

return redirect()->away(session('callback'));

如果您仍在使用laravel提供的默认Auth / RegisterController,则可以通过定义自定义重定向功能来更改重定向行为

protected function redirectTo()
{
    return redirect()->away(session('callback'));
}

Laravel会自动捡起来。

不要忘记删除属性

protected $redirectTo = '/home';