3

我正在使用https://oauth.io/signin第三方网站集成 facebook、twitter、github、linkedin。我集成了 facebook,并能够直接成功地获取 id、name、gender 属性,但在获取电子邮件地址、位置值方面遇到了困难。

在此处输入图像描述

在 oauth.io 站点中,我什至为 facebook 添加了范围权限

在此处输入图像描述

我正在使用下面的代码来获取登录用户的信息。

OAuth.popup('facebook')
            .done(function (result) {
                res = result;
                result.me().done(function (response) {
                    debugger;
                    console.log('me ' + response.name);
                    console.log('me ' + response.email);

                });
            })
            .fail(function (error) {
                alert('fail');
            });

我什至尝试过滤结果仅使用

OAuth.popup('facebook')
            .done(function (result) {
                res = result;
                result.me(['email', 'birthdate', 'location']).done(function (response) {
                    debugger;
                    console.log('me ' + response.name);
                    console.log('me ' + response.email);

                });
            })
            .fail(function (error) {
                alert('fail');
            });

但它只是返回空对象。如果我遗漏了什么,有人可以告诉我吗?

4

1 回答 1

3

我能够使用 facebook 获得必填字段

 result.get('/me?fields=name,email,gender,birthday').done(function (response) {
                    console.log('me ' + response.name); 
  });

但是相同的代码不适用于 twitter。仍在寻找适用于大多数 API 的通用方式的答案

于 2015-08-05T01:46:05.200 回答