Facebook API - 再次获取包含详细信息的朋友列表

本文关键字:详细信息 朋友 列表 包含 获取 API Facebook | 更新日期: 2023-09-27 18:33:17

我正在使用Facebook SDK ( http://facebooksdk.net (,并希望获取包含以下信息的好友列表:1. 身份证件2. 名称3. 照片4. 链接5. 电子邮件6. 等等...

我已经阅读了Facebook的文档和论坛的不同帖子(包括stackoverflow(,但我很困惑。之后我不确定,是否有可能通过 API 请求获取此信息。首先,此请求仅返回 ID 和名称数据:

        var client = new FacebookClient("XXX");
        dynamic friends = client.Get("/me/friends");

下一步 - 尝试修改此请求以指定返回的字段:

        var client = new FacebookClient("XXX");
        dynamic friends = client.Get("/me/friends?fields=about,bio,age_range,first_name,gender,address,email,location,link,languages,username,last_name,timezone,updated_time");

它只返回一些字段:

  "first_name": "XXX", 
  "gender": "male", 
  "link": "https://www.facebook.com/XXX", 
  "username": "XXX", 
  "last_name": "XXX", 
  "updated_time": "2013-09-07T12:18:34+0000", 
  "id": "XXX"

是否可以返回更多字段?据我了解,这取决于权限。我尝试设置这些权限。我转到应用程序 -> MyApp -> 权限,看到"用户和朋友权限"字段为空。我尝试设置一些权限,即

user_about_me,friends_about_me

单击"保存"按钮后,我看到消息:

已保存更改。请注意,您的更改可能需要几分钟才能 传播到所有服务器。

但字段"用户和朋友权限"再次为空。第一个问题:为什么以及如何查看所有设置的权限?

其次 - 我在通过 FacebookClient 的请求中没有看到任何更改(但请求中添加了"关于"字段(。为什么?

谢谢

Facebook API - 再次获取包含详细信息的朋友列表

无需任何额外权限即可获取的字段:

  1. first_name
  2. 链接
  3. 用户名
  4. last_name
  5. updated_time
  6. 编号

有权限-

friends_about_me - 关于,生物
friends_location - 地理位置
friends_likes - 语言

无效字段(我不知道您从哪里看到这些字段(-

  1. age_range
  2. 地址
  3. 电子邮件
  4. 时区

您没有获得所有字段的另一件事是因为用户没有请求权限(因此没有向您的应用程序授予任何权限(。

这是因为,您必须在登录用户时在代码中添加权限,而不仅仅是在应用程序设置中添加权限。

例如,如果您使用的是javascript sdk,则使用scope参数完成。参考


始终可以在此处测试调用:图形 API 资源管理器

要回答你的第一个问题,你可以在这里看到答案,使用 Facebook 图形 API 并搜索/{user id}/permissions。

其余的则有些文职。您无法获取此处回答的好友电子邮件地址。为了获得朋友的个人资料图片,您需要添加字段图片(您可以指定像这个图片.width((.height((这样的大小(。

我建议您尝试使用Facebook的Graph API Explorer来播放您请求的权限和信息。