在 Facebook API 中,有没有一种方法可以通过用户 ID 获取用户的姓名?
我在 ASP.NET MVC 应用程序中使用 FB API,并使用 MultiFriendSelector 让用户邀请 friend 加入我的应用程序。我需要当选择这些 friend 时,将他们保存在我的数据库中,以便他们可以访问我的页面。这是我到目前为止的代码。
function sendRequestToRecipients() {
var user_ids = document.getElementsByName("user_ids")[0].value;
FB.ui({
method: 'apprequests',
message: 'Join my group on CodeShare!',
to: user_ids
}, requestCallback);
}
function sendRequestViaMultiFriendSelector() {
FB.ui({
method: 'apprequests',
message: 'Join my group on CodeShare!'
}, requestCallback);
}
function requestCallback(response) {
if (response.request && response.to) {
var request_ids = [];
for (var i = 0; i < response.to.length; i++) {
var fb_id = response.to[i];
request_ids.push(fb_id);
//// here I want to get the user's names and
surnames so that I can send them along with the id's..
$.ajax({
url: '/Groups/SaveInvitedFriends',
type: 'POST',
data: { invitedFriends: request_ids }
});
}
}
}
有没有办法在接受请求后保存用户的信息?
谢谢
最佳答案
您将需要进行 API 调用来请求用户的信息。 Facebook 的 JavaScript API 文档给出了以下示例:
FB.api('/me', function(response) {
alert('Your name is ' + response.name);
});
(来自 http://developers.facebook.com/docs/reference/javascript/#graphapi )
me
指当前登录的用户。如果您使用用户 ID,response
对象将包含 name
(全名)、first_name
、last_name
(姓),以及其他几个基本字段。例如,zuck
是 Mark Zuckerberg 的用户 ID,因此使用请求 FB.api("/zuck", function(response) { console.log(response); });
返回以下内容:
Object {
first_name: "Mark"
gender: "male"
id: "4"
last_name: "Zuckerberg"
link: "https://www.facebook.com/zuck"
locale: "en_US"
name: "Mark Zuckerberg"
updated_time: "2013-05-09T05:12:23+0000"
username: "zuck"
}
如果这有意义或者您有任何疑问,请告诉我:)
关于javascript - 通过用户 ID 获取用户名和姓氏 FB Api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16680364/