通过图形API检索Facebook用户墙帖

Hai*_*Hai 4 facebook facebook-wall facebook-graph-api access-token

我正在开发一个Facebook应用程序,用于捕获指定用户,页面或组的墙贴,在用户授权应用程序之后我引用返回的access_token来调用方法

https://graph.facebook.com//feed?access_token =

这适用于页面和组,因为我们只需要一个有效的令牌,但是对于用户而言,结果会有所不同,具体取决于授权应用程序的用户与正在捕获其帖子的用户之间的关系.

例如,如果两个用户之间没有任何关系,即使它们是公开的并且在您查看用户的个人资料时显示,也不会返回某些帖子,但是如果他们是朋友,则会返回更多帖子.

有人可以解释一下这种行为吗?是否可以使用此方法获取所有帖子?

DMC*_*MCS 6

是的,根据https://developers.facebook.com/docs/reference/api/permissions中列出的权限,调用的结果会有所不同,具体取决于关系.

但是,当事物是公共的并且您使用不属于该用户的访问令牌时,则不会返回任何结果.我不记得这不是这样的时候了.由于一些奇怪的原因(通过Facebook的设计或遗漏)使用图形API来使用用户访问令牌获取公共帖子只是不想工作.

例如,您可以在此处查看一些公共项目

http://www.facebook.com/zuck http://graph.facebook.com/zuck

但是,如果没有访问令牌,您似乎无法从此处获取任何Feed

https://graph.facebook.com/zuck/feed

{
   "error": {
      "message": "An access token is required to request this resource.",
      "type": "OAuthException"
   }
}
Run Code Online (Sandbox Code Playgroud)

让我们尝试添加一个不属于zuck或zuck的朋友的用户访问令牌.https://graph.facebook.com/zuck/feed?access_token= {UserAccessToken}

这就是我们得到的:

{
   "data": [

   ]
}
Run Code Online (Sandbox Code Playgroud)

应用访问令牌怎么样?我们来试试 https://graph.facebook.com/zuck/feed?access_token= {AppAccessToken}

{
   "error": {
      "message": "Invalid OAuth access token signature.",
      "type": "OAuthException"
   }
}
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,通过图表获取与您的访问令牌不一致的内容很困难.