Facebook javascript sdk 在parse.com上通过Facebook登录时,如何获取用户电子邮件
我需要在parse.com应用程序中获取用于商业目的的用户电子邮件。是否可以在Facebook注册/登录过程中获取它 例如,我有以下登录代码Facebook javascript sdk 在parse.com上通过Facebook登录时,如何获取用户电子邮件,facebook-javascript-sdk,parse-platform,facebook-authentication,Facebook Javascript Sdk,Parse Platform,Facebook Authentication,我需要在parse.com应用程序中获取用于商业目的的用户电子邮件。是否可以在Facebook注册/登录过程中获取它 例如,我有以下登录代码 var signupLoginFB = function() { Parse.FacebookUtils.logIn("email", { success: function(user) { //do something on successful login }, error: function
var signupLoginFB = function() {
Parse.FacebookUtils.logIn("email", {
success: function(user) {
//do something on successful login
},
error: function(user, error) {
//do something on error
}
});
}
我查看了传递给回调的用户对象,在那里没有看到任何电子邮件。我应该调用其他FB或Parse API来获取这些数据吗?您需要按如下方式调用FB.API:
var signupLoginFB = function() {
Parse.FacebookUtils.logIn("email", {
success: function(user) {
//do something on successful login
FB.api('/me', function(me) {
user.set("displayName", me.name);
user.set("email", me.email);
user.save();
console.log("/me response", me);
});
},
error: function(user, error) {
//do something on error
}
});
}
您将在控制台中看到返回的所有字段。请注意,他们会根据他们决定共享的内容而有所不同,例如,我的Facebook个人资料不包括我的电子邮件,因此不会在/me通话中返回
如果是新用户,也可以考虑只做额外的调用,即在if中封装代码!user.existed{…}。您需要按如下方式调用FB.api:
var signupLoginFB = function() {
Parse.FacebookUtils.logIn("email", {
success: function(user) {
//do something on successful login
FB.api('/me', function(me) {
user.set("displayName", me.name);
user.set("email", me.email);
user.save();
console.log("/me response", me);
});
},
error: function(user, error) {
//do something on error
}
});
}
您将在控制台中看到返回的所有字段。请注意,他们会根据他们决定共享的内容而有所不同,例如,我的Facebook个人资料不包括我的电子邮件,因此不会在/me通话中返回
如果是新用户,也可以考虑只做额外的调用,即在if中封装代码!user.existed{…}