我从我的cordova应用程序上使用的插件中获得了一个Facebook登录用户,我成功地获得了这一点,并在登录后将新记录添加到Parse User类中。现在我尝试通过电子邮件(例如abd@user.com)获取用户,当我找到他时,我想将他链接到我刚刚登录的Facebook用户。
Parse.FacebookUtils.logIn(authData,
{
success: function(_user) {
var query = new Parse.Query('User');
query.equalTo('username',data.email);
query.first({
success: function(user){
if (!Parse.FacebookUtils.isLinked(user)) {
// It reaches here
Parse.FacebookUtils.link(_user, null, {
success: function(aUser) {
// But neither here
alert("User logged in with Facebook!");
},
error: function(aUser, error) {
// Nor here
alert("User cancelled the Facebook login or did not fully authorize.");
}
});
}
},
error: function(error){
}
});
},
error: function(error1, error2){
alert("Unable to create/login to as Facebook user");
alert(" ERROR1 = "+JSON.stringify(error1));
alert(" ERROR2 = "+JSON.stringify(error2));
}
});// finish login
虽然Parse.FacebookUtils.link
条件已满,并且用户似乎尚未链接(请参阅上面的代码),但我不确定为什么两个处理程序未在Parse.FacebookUtils.isLinked
上调用。