Auth0 Lock 中不触发鉴权回调函数

Posted

技术标签:

【中文标题】Auth0 Lock 中不触发鉴权回调函数【英文标题】:The authentication callback function is not triggered in Auth0 Lock 【发布时间】:2017-03-09 23:52:21 【问题描述】:

我有一个场景,我想使用Auth0 登录我的应用程序。我在我的项目中包含了一个指向 Auth0 Lock 版本10.3.0 的 CDN 链接,然后我就这样使用它:

let options = 
    disableSignupAction: true,
    rememberLastLogin: false,
    gravatar: false


// Show the login form
this.auth0Lock.show(options, (err, profile, token) => 
    if (err) 
        this.$log.error('Login error:', err)
        return reject(err)
    
);

当我选择使用谷歌登录时,回调函数没有被触发,我无法获取令牌。

【问题讨论】:

【参考方案1】:

您说您使用的是版本10.3.0,但您添加的代码针对的是以前版本的Lock。对您的示例特别重要:

show 方法不再接受任何参数。您将选项传递给构造函数,然后侦听经过身份验证的事件,而不是提供回调。

(重点是我的)

有关从以前版本迁移的更多信息,请参阅Lock 9 to Lock 10 Migration Guide。

另外,您当前的回调只有发生错误时的逻辑,因此在迁移到 Lock 10 的新方法后,您仍然需要为成功场景添加逻辑。

【讨论】:

是的,但如果我包含 9.1 版 cdn,我会得到: 需要社交提供者 API 密钥 使用弹出模式时,您必须在社交提供者上配置自己的 ClientID 和 Secret。为此,请转到 Social Connections 展开 并配置密钥。 我需要在哪里配置密钥 您可以通过Auth0 Dashboard 做到这一点;左侧菜单:[Connections] -> [Social],然后选择 Google。 为此我们需要输入任何内容,例如客户端 ID 或域名? 是的,您需要输入客户端 ID 和客户端密码。见this for a step-by-step tutorial on how to obtain Google client keys。

以上是关于Auth0 Lock 中不触发鉴权回调函数的主要内容,如果未能解决你的问题,请参考以下文章

angular2 router.navigate 在 auth0 回调中

Vue/Quasar 和 Capacitor 应用程序的 Auth0 回调 URL

React 应用程序中的 Auth0 Lock v11 未捕获“已验证”事件

回调闭包函数在单元格中不起作用

如果回调函数没处理完,又产生了触发该回调函数的事件,怎么处理?

如何触发woocommerce回调函数?