【问题标题】:Symfony FOSUserBundle Persist sf_redirectSymfony FOSUserBundle 持久化 sf_redirect
【发布时间】:2019-10-24 17:06:53
【问题描述】:

我正在尝试将用户从外部来源重定向到激活页面。

基本上他们点击我们的 CTA 并请求服务,然后它的工作原理如下:

  1. 未经身份验证的用户点击 CTA
  2. (未登录)用户被防火墙阻止,重定向到 /login
  3. 如果用户登录,他们会被重定向到请求的正确路由,并且一切都按预期工作。

现在我的问题在于,当未经身份验证的用户没有登录,而是创建了一个帐户时,FOSUserBundle 会自动取消设置 sf_redirect cookie,这反过来会破坏现有的功能。

我想知道是否有办法将 sf_redirect 请求持久化到 registerAction 上,并且一旦用户完成注册重定向到正确的位置。

我知道这样做的一种方法是连接到 FOS 用户包的 loginController 并将请求的路由保存到另一个 cookie 参数中并查找天气或未设置该参数并重定向(或未设置) 我只是想知道是否有更清洁/更好的方法来做到这一点?

【问题讨论】:

    标签: symfony redirect login fosuserbundle symfony-3.4


    【解决方案1】:

    我设法通过挂钩事件并设置 cookie 来解决这个问题,然后我在登录后检查了该 cookie ||注册完成事件被触发,我将用户重定向到指定的 URL(如果它位于我允许通过防火墙的 URL 数组中)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-22
      • 2016-04-13
      • 2018-09-29
      • 2018-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-12
      相关资源
      最近更新 更多