Facebook 科尔多瓦:可以';无法获取用户信息,显示';格式错误的访问令牌';
我即将完成我的cordova应用程序,我正在使用facebook社交登录。我试图从openfb.js调用的graph API访问用户信息。我的代码片段如下:Facebook 科尔多瓦:可以';无法获取用户信息,显示';格式错误的访问令牌';,facebook,cordova,cordova-plugins,openfb,Facebook,Cordova,Cordova Plugins,Openfb,我即将完成我的cordova应用程序,我正在使用facebook社交登录。我试图从openfb.js调用的graph API访问用户信息。我的代码片段如下: function login() { openFB.login( function (response) {
function login() {
openFB.login(
function (response) {
if (response.status === 'connected') {
alert(JSON.stringify(response));
FACEBOOK_TOKEN = response.authResponse.accessToken;
var message = "Connected to Facebook_____";
alert('Message is :' + message);
alert('Access token is :' + FACEBOOK_TOKEN);
getInfo(response.authResponse.accessToken);
} else {
var errorMessage = 'Facebook login failed: ' + response.error + "_____";
alert(errorMessage);
}
}, {scope: 'email,public_profile,user_birthday,user_location'});
}
function getInfo(access_token) {
openFB.api({
path: '/2.5/me?access_token=' + access_token,
success: function (data) {
alert(JSON.stringify(data));
var message = "Logged in with Facebook as " + data.name + "_____";
alert(message);
},
error: errorHandler
});
}
function errorHandler(error) {
var errorMessage = error.message;
alert('Error is : '+errorMessage);
}
在本例中,当我获取用户的访问令牌时,但当我将其传递给get info函数中的graph API时,它会显示错误:
Error is : Malformed access token CAANoTLg2W..........
我无法调试这里的错误焦点。请帮我解决它。
提前感谢您的回复
您的警报消息表明访问令牌被附加了两次–
[a\u t]?访问令牌=[a\u t]
。您确定需要手动传递访问令牌吗?我希望这样一个库能够在内部处理这个问题。我正在尝试将其存储在localstorage中,因为在Cordova中无法访问sessionstorage。你说得对,但是我得到的响应就像我收到的JSON中只有一个名称和一些id。如果我需要用户电子邮件,dob,gender???我该怎么办?自从API v2.4推出以来,你需要特别询问你想要的字段。好的,我收到了电子邮件,gender,因为这是用户配置文件的一部分,但我没有收到用户的生日和用户的位置。我该怎么办?