如何在登录和注销后重定向 - laravel 5

时间:2015-04-04 09:23:17

标签: ajax redirect laravel login laravel-5

现在登录或退出后,我将转发到主页。

this article中的

已经读过 我可以在Auth Controller中定义重定向路径

protected $redirectPath = '/';

我也可以在Middleware RedirectIfAuthenticated.php中更改此行:

return new RedirectResponse(url('/'));

但我的目标是

  • 通过AJAX登录

  • 或者,在登录或注销后,重定向回到我按下按钮的页面。

这两个答案都非常感谢。

THX。

3 个答案:

答案 0 :(得分:2)

要重定向到上一页,您可以使用back(),如下所示:

return redirect()->back();

您可以在Laravel Docs中阅读更多内容。

答案 1 :(得分:0)

如何使用这样的东西?

if(Session::get('redirect') == null) {
Session::flash('redirect', 'ok');
return redirect()->back();
}

答案 2 :(得分:0)

对于任何必须将用户重定向到他们点击了重定向回登录的受保护页面按钮的页面的人。这是我的简单方法。

首先在您的导航,菜单或其他内容中,您的 href 值将是这样的:

Authentication

这简单的做法是,如果你的用户没有登录,它会使用lgin页面作为url,这只是简单地切断了重定向的需要,并添加了他们所在的页面,这将是他们重定向的页面登录后作为登录URL的get参数。与使用会话检索http_referer不同,如果用户由于验证错误而被重定向回登录时会出错,这会在您的网址上停留。

登录网址示例可能为<a href="{{auth::check() ? url('protected-page') : url('signin').'?redirect_to=post-request'}}"> Some Page </a>

然后只需在登录后,您只需检查是否可以获得param redirected_to ,然后将用户重定向回该页面或默认页面,如果它不可用作获取参数,可能是您的家或仪表板也许,下面的例子可能有所帮助。

http://localhost:2008/signin?redirect_to=protected-page

我希望这有助于某人!