【发布时间】:2015-08-26 02:50:23
【问题描述】:
我的应用处于早期开发阶段。我正在使用最新的 PhoneGap Build 和 Facebook Connect 插件。我设法让登录正常工作 - 你点击 Login With Facebook 按钮,它切换到 Facebook 应用程序,Facebook 将一个带有基本登录密钥/令牌和用户 ID 的对象传递给我的应用程序,然后我的应用程序尝试联系用户的全名和年龄。
我似乎无法让 Facebook 向我提供除用户 ID 和全名之外的任何信息。我需要用户的年龄!由于某种原因,添加投影不起作用...我的代码有什么问题?
var fbLoginSuccess = function (userData) {
facebookConnectPlugin.getAccessToken(function(token) {
if(userData['status'] == 'connected'){
getBasicUserInfo_fb(userData);
}
}, function(err) {
alert("Could not get access token: " + err);
});
}
function getBasicUserInfo_fb(userData){
facebookConnectPlugin.api(userData['authResponse']['userID'] + "/?fields=id,birthday", ["user_birthday"], function (response) {
if (response && !response.error) {
alert("response: " + JSON.stringify(response));
console.log(response);
var user_name = response['name'];
var user_age = response['birthday'];
var user_picture = response['picture'];
}
},
function (error) {
console.log(error);
alert("Failed: " + JSON.stringify(error));
});
}
Github 页面 (https://github.com/Wizcorp/phonegap-facebook-plugin) 说:
获取用户的生日
使用图形 api 这是一项非常简单的任务:
facebookConnectPlugin.api("<user-id>/?fields=id,email", ["user_birthday"], function (result) { alert("Result: " + JSON.stringify(result)); /* alerts: { "id": "000000123456789", "email": "myemail@example.com" } */ }, function (error) { alert("Failed: " + error); });
我可能会失去理智,但 Github 上的示例是说如何获取生日,并且设置了范围来获取它,但是随后设置了参数以获取电子邮件地址。基本上我所做的只是将“id,email”更改为“id,birthday”......我做错了什么?!
【问题讨论】:
标签: javascript facebook cordova facebook-graph-api phonegap-build