我有社交媒体工具栏。我有 facebook like 按钮,我的愿望是当有人点击 facebook like 按钮而不是找到用户并将相关信息存储到我的数据库以进行促销时。
我做了这样的
window.fbAsyncInit = function() {
FB.Event.subscribe('edge.create',
function(response) {
var FBGraphURL = "http://graph.facebook.com/user/callback=?";
FB.getLoginStatus(function(res) { alert(res); });
FB.api('/me', function(resp) {
alert('Good to see you, ' + resp.username + '.');
});
});
};
但仍然 resp.username 显示为undefined。我该如何解决这个问题?
更新
工作代码:
window.fbAsyncInit = function() {
FB.Event.subscribe('edge.create', function(response) {
login();
});
};
function login() {
FB.login(function(response) {
if (response.authResponse) {
GetUser();
} else {
// cancelled
}
}, {scope: 'email'});
}
function GetUser() {
FB.api('/me', function(resp) {
alert('Good to see you, ' + resp.email + '.');
});
}
此外,每个域都有不同的 App Id(重要)