如何使用Auth0 Lock从响应对象获取用户名?

时间:2019-04-22 14:09:14

标签: javascript angularjs reactjs authentication auth0

问题是如何从响应对象获取我用来登录的用户名?

我正在通过以下代码创建Auth0Lock实例:

this._lock = new Auth0Lock(AUTH_CONFIG.clientId, AUTH_CONFIG.domain, AUTH_CONFIG.options);

然后我订阅“已验证”事件:

this._lock.on('authenticated', authResult => {
  this._lock.getUserInfo(authResult.accessToken, function(error, profile) {

        console.log('profile', profile); // --> undefined

        if (error) {
          // Handle error
        }

  });
})

我通过以下凭据登录:

用户名:john@gmail.com密码:123456

我希望能够在authResult对象的某处看到“用户名:john@gmail.com”。 但是很遗憾,我没有看到。

我应该在Auth0lock选项中添加一些内容吗?

P.S。我在“ authenticated”事件的处理程序中添加了以下代码,但它返回的配置文件未定义。

1 个答案:

答案 0 :(得分:0)

我刚刚将范围:“ openid”添加到选项的“ auth”属性中

options: {
  ...
  auth: {
    ...
    scope: 'openid'  <---
  }
}