【问题标题】:Ember Simple Auth subdomain redirectsEmber 简单身份验证子域重定向
【发布时间】:2016-06-08 16:58:37
【问题描述】:

我已经能够使用基于共享 Ember Simple Auth cookie 的身份验证成功设置多个 Ember 应用程序。我旅程的下一步是在应用程序之间设置正确的重定向。听我说完。

场景 A(开箱即用,耶!)

  • 用户尝试访问domain.com/deep/link/resource
  • 用户未登录
  • 用户被重定向到 domain.com/login 以通过使用 Ember Simple Auth 使用令牌保存 cookie 的单点登录组件登录
  • 成功登录后,用户通过先前的转换重定向回domain.com/deep/link/resource

场景 B(开箱即用,耶!)

  • 用户尝试访问app-b.domain.com/deep/link/resource
  • 用户已经通过带有令牌的 Ember Simple Auth cookie 登录
  • 用户可以访问app-b.domain.com/deep/link/resource路由

场景C(这是我需要实现的)

  • 用户尝试访问app-a.domain.com/deep/link/resource
  • 用户未登录
  • 用户被重定向到 domain.com/login 以通过使用 Ember Simple Auth 使用令牌保存 cookie 的单点登录组件登录
  • 成功登录后,用户通过app-a 子域上的先前转换重定向回app-a.domain.com/deep/link/resource

任何帮助或指导将不胜感激。我想知道我是否可以仅使用 Ember Simple Auth 实现 Scenario C,或者我是否需要在子域的beforeModel 中编写自定义重定向逻辑等。

【问题讨论】:

    标签: javascript ember.js ember-simple-auth


    【解决方案1】:

    您将能够通过覆盖AuthenticatedRouteMixin's beforeModel method 使方案C 正常工作。默认情况下,这将是(Ember.js)转换到登录路由,但在您的情况下,您想要某事。像window.location.replace('domain.com/login') 并记住cookie 中的当前URL 左右。为了在用户登录后重定向到app-a.domain.com/deep/link/resource,您需要覆盖ApplicationRouteMixin's sessionAuthenticated method,以便它重定向到cookie中记住的前一个URL(如果存在),如果不存在则回退到默认行为。

    总体而言,实际上按照这些步骤进行操作应该非常简单。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 2019-05-10
      • 1970-01-01
      相关资源
      最近更新 更多