在弹出模式下使用Auth0锁
我正在使用Auth0在Google Ionic应用程序中使用Google实现社交登录。在弹出模式下使用Auth0锁
我已经设置redirect
选项等于false
根据documentation这打开了一个新标签。
现在,当我设置redirect
等于true
(默认),则按照文件应该显示在弹出的登录窗口,但我收到以下错误:
Refused to display ' https://accounts.google.com/AccountChooser?continue=https://accounts.google ….com%26from_login%3D1%26as%3D-13354ff19852788a&btmpl=authsub&scc=1&oauth=1' in a frame because it set 'X-Frame-Options' to 'DENY'
我知道,因为我试图在localhost
里面打开这个,这就是我得到这个错误的原因。但是我怎样才能在我的本地环境中测试这个功能呢?
根据如果将redirect
选项设置为false
(覆盖默认值true)将触发使用弹出窗口模式。
redirect - Defaults to true. When set to true, redirect mode will be used. If set to false, popup mode is chosen.
Use of the popup mode可以导致新的标签页或窗口,而使用默认重定向模式使用当前窗口重定向到身份提供者被打开。
使用redirect=true
时获得的错误似乎表明您在应用程序中使用了iframe,并且您尝试从iframe内执行身份验证。谷歌身份提供商不支持谷歌在回应中暗示的X-Frame-Options: DENY
。 (这个头文件要求浏览器在iframe内导航失败)
总之,这个错误不是由Lock直接引起的。
我不想使用应用内浏览器向用户显示登录窗口。我想要显示弹出窗口。我怎样才能实现这个功能比使用Auth0 –
弹出模式的触发器是通过使用'redirect = false'来实现的。正如文档中所述,这可能导致打开**新标签**或**窗口**;你的问题是,它打开一个新的标签,而不是一个窗口? –
实际上它打开了一个新标签,我希望它在一个弹出窗口中打开。 –