Ember Tori facebook身份验证无法获取用户电子邮件

Ember Tori facebook身份验证无法获取用户电子邮件,facebook,authentication,ember.js,ember-simple-auth,Facebook,Authentication,Ember.js,Ember Simple Auth,我使用的是Ember CLI+Ember simple auth Tori 从facebook获取我的余烬应用程序的身份验证代码 这是我的environment.js文件 ENV['torii'] = { providers: { 'facebook-oauth2': { apiKey: '865549306850377', scope: 'email', //redirectUri: window.document.

我使用的是Ember CLI+Ember simple auth Tori

从facebook获取我的余烬应用程序的身份验证代码

这是我的
environment.js
文件

ENV['torii'] = {
    providers: {
      'facebook-oauth2': {
        apiKey:      '865549306850377',
        scope: 'email',
        //redirectUri: window.document.location.href
        redirectUri: 'http://localhost:4200/'
      }
    }
  };
我的登录控制器看起来像这样-

facebook: function() {

    var _this = this;
            this.get('session').authenticate('simple-auth-authenticator:torii', 'facebook-oauth2').then(function(data){
                console.log("status - ", _this.get('session'));
            });
        }
和login.hbs-

<li><button {{action "facebook" "facebook-oauth2"}}>Facebook OAuth2</button></li>
Facebook OAuth2 用户点击链接后,facebook弹出窗口打开,ember应用程序获得一个令牌

如何将用户的电子邮件id与此令牌一起获取?
有人遇到过类似的问题吗?

所以您使用的是oauth2,所以您将得到的只是一个授权令牌。有了这个令牌,你就可以去请求其他信息了。令牌基本上就是为了加速用户对应用程序的验证

如果您想获取用户信息,则需要创建另一个方法(可能在服务器端),用于交换访问令牌的授权码:(或者,您可以直接请求访问令牌,这将消除对服务器端解决方案的需求

使用访问令牌,您可以请求Facebook用户ID,之后您将能够访问任何端点以获取所需的信息