我是在ios上做的。当我获取用户的信息(gendar、locale等)时,例如Bill Gates(216311481960),它将返回错误。也许是因为这些信息不公开。如果我只得到名称、链接、图片,那就没问题了。但我该如何处理这种错误。我如何知道可以检索哪些信息?
谢谢。
最佳答案
没有用户访问 token ,可以通过以下方式获取公共(public)信息:http://graph.facebook.com/216311481960
{
"id": "216311481960",
"name": "Bill Gates",
"picture": "http://profile.ak.fbcdn.net/hprofile-ak-snc4/276582_216311481960_498814368_s.jpg",
"link": "http://www.facebook.com/BillGates",
"likes": 1216122,
"category": "Public figure",
"is_published": true,
"website": "www.thegatesnotes.com www.gatesfoundation.org",
"username": "BillGates",
"talking_about_count": 25035
}
如您所见,这似乎不是用户信息,而是页面信息。
对于用户信息,您需要使用 Facebook 用户 ID。 Zuck 是 4...所以这样做:http://graph.facebook.com/4
{
"id": "4",
"name": "Mark Zuckerberg",
"first_name": "Mark",
"last_name": "Zuckerberg",
"link": "http://www.facebook.com/zuck",
"username": "zuck",
"gender": "male",
"locale": "en_US"
}
请注意它如何同时具有名字和姓氏,而您作为示例的“比尔盖茨”显然不是“用户”而是一个页面。
使用有效的用户访问 token ,可以通过以下方式获取所有共享信息:
http://graph.facebook.com/me?access_token=ValidUserAccessToken
关于ios - 获取 Facebook 用户的基本信息时收到错误响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9815253/