当前位置: 首页 > 知识库问答 >
问题:

在Laravel 5中进行身份验证后重定向

林威
2023-03-14

我想重定向用户回到他们在Laravel 5成功登录后登录页面之前查看的页面。目前,如果用户写了一个错误的用户名/密码,他会被重定向到登录页面,显示错误,我想保持这种方式。另外,我希望当用户点击页面上的登录按钮时,以及当用户被自动重定向到登录页面时,此功能能够正常工作。

在我看来

protected $redirectTo = "/";

是这里的关键,但我不知道如何让它“重定向到不是登录页的最后一页”。感谢您的帮助。

共有3个答案

司徒河
2023-03-14

Laravel允许您重写AuthController中的reDirectPath()方法,该方法通常将使用reDirectTo属性,但您可以将其设置为动态的。

public function redirectPath()
{
    return request('redirect');
}

并在登录刀片模板中放置一个隐藏的输入

<input type="hidden" name="redirect" value="{{ url()->previous() }}">
裴心水
2023-03-14

使用URL::前一个()在您的重定向返回重定向()-

此外,您还可以在会话中保存url,并在以后的任何时候使用它。

终翔
2023-03-14
$url = URL::previous() != url('login') ? URL::previous() : null;
$previousUrl = old('previousUrl', $url);

$previousUrl传递到您的登录视图。

在登录视图中,放入previousUrl字段:

在你的AuthController.php更新构造函数:

public function __construct()
{
    $this->redirectTo = app('request')->input('previousUrl') ? : $this->redirectTo;
    <...>
}

没有经过测试,但它应该可以工作。

 类似资料:
  • 我的管理员控制器扩展了控制器类,在那里我使用方法加载视图页面并传递保护。config/auth.php也通过添加管理员保护和提供程序进行了修改。在app/Actions/Fortify文件夹中,我添加了AttemptToAuthenticate和ReDirectIfTwoFactorAuthenticate类,并更改了命名空间。我的管理员控制器还扩展了Guard。用户的重定向中间件和管理员的重定向

  • 我正在laravel中创建一个多身份验证系统,其中有两种类型的用户:管理员(由我创建)和用户(使用本地laravel身份验证系统)。 如果我以用户身份登录,当我尝试访问登录页面时,当我已经登录,它会将我重定向回仪表板,但如果我以管理员身份登录,当我再次访问管理员登录页面时,它会让我再次登录,尽管已经作为管理员登录。 以下是我的重定向身份验证类代码: 有人能解释一下发生了什么事吗?

  • 我目前正在使用FirebaseAuth和web小部件库firebaseui web开发基于VueJS的登录流原型。 成功认证后(无论是< code>password还是< code>google provider ),小部件加载栏会不断重复,firebaseui-web不会触发其< code > signinseccesswithauthresult 回调。但是对< code > identity

  • 问题内容: 我正在尝试使用node.js,express和passport.js建立登录机制。登录本身工作得很好,会话也可以很好地存储在redis上,但是在提示用户进行身份验证之前,将用户重定向到他从那里开始时确实存在一些麻烦。 例如,用户跟随链接,然后重定向到,但是我希望他再次重定向回。 这样做的目的是,如果用户随机访问需要首先登录的页面,则应将其重定向到提供其凭据的/ login站点,然后再重

  • 我正在尝试用.NET中的LDAP制作一个简单的身份验证系统。我检查了.NET中的一些名称空间,并简单地制作了标准代码片段,如下所示。 我有一个管理员用户名和密码和,用于对客户端应用程序进行身份验证。我有第二个用户名和密码和,需要在LDAP中检查才能登录。 是管理帐户,只是LDAP中的用户。那么如何检查的密码呢?

  • 问题内容: 在我的iOS应用程序中,我想使用WKWebView在应用程序中包装外部URL 。此URL需要基本身份验证(它需要用户和密码凭据,如以下屏幕截图所示)。 经过一番调查,我尝试使用 didReceiveAuthenticationChallengemethod来启用自动 登录,因此我不了解它的工作原理。 这是我的代码。 I’m facing with this exception: If