【问题标题】:Using Auth0 Lock in popup mode在弹出模式下使用 Auth0 Lock
【发布时间】:2016-12-09 18:13:05
【问题描述】:

我正在使用 Auth0 在我的 Ionic 应用程序中使用 Google 实现社交登录。

我根据documentationredirect 选项设置为等于false,这会打开一个新标签。

现在,当我将redirect 设置为等于true(默认)时,根据文档,它应该在弹出窗口中显示登录窗口,但我收到以下错误:

拒绝在框架中显示“https://accounts.google.com/AccountChooser?continue=https://accounts.google….com%26from_login%3D1%26as%3D-13354ff19852788a&btmpl=authsub&scc=1&oauth=1”,因为它将“X-Frame-Options”设置为“DENY”

我知道是因为我试图在 localhost 中打开它,这就是我收到此错误的原因。但是如何在本地环境中测试此功能?

【问题讨论】:

    标签: auth0


    【解决方案1】:

    根据documentation on Auth0 Lock settings,如果您将redirect 选项设置为false(覆盖默认值true)将触发弹出模式的使用。

    重定向 - 默认为 true。当设置为 true 时,将使用重定向模式。如果设置为 false,则选择弹出模式。

    Use of the popup mode 可能会在使用默认重定向模式时打开一个新选项卡或窗口,使用当前窗口重定向到身份提供者。

    您在使用redirect=true 时遇到的错误似乎表明您在应用程序中使用了 iframe,并且您正在尝试从 iframe 内部执行身份验证。正如在 Google 的响应中使用 X-Frame-Options: DENY 所暗示的那样,Google 身份提供商不支持这一点。 (此标头请求浏览器在 iframe 中导航失败)

    总之,这个错误并不是Lock直接引起的。

    【讨论】:

    • 我不想使用应用内浏览器向用户显示登录窗口。我想显示弹出窗口。我怎样才能实现这个功能而不是使用 Auth0
    • 弹窗模式的触发是通过redirect=false实现的。如文档中所述,这可能会导致打开 new tabwindow;你的问题是它打开一个新标签而不是一个窗口?
    • 实际上它在一个新标签中打开,我希望它在一个弹出窗口中打开。
    • 可以通过popupOptions设置在使用弹出模式时调整窗口的一些特性。这是否满足您的定制要求?
    • @Bhushan Goel,刚刚跟进...您的问题解决了吗?
    猜你喜欢
    • 2016-05-03
    • 2018-02-04
    • 2017-06-02
    • 2018-10-02
    • 2016-07-09
    • 2017-04-11
    • 2018-01-29
    • 1970-01-01
    • 2017-03-08
    相关资源
    最近更新 更多