Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
FacebookGraphAPI:从帖子URL查找图形对象_Facebook_Facebook Graph Api_Facebook Graph Api V2.2_Indieweb - Fatal编程技术网

FacebookGraphAPI:从帖子URL查找图形对象

FacebookGraphAPI:从帖子URL查找图形对象,facebook,facebook-graph-api,facebook-graph-api-v2.2,indieweb,Facebook,Facebook Graph Api,Facebook Graph Api V2.2,Indieweb,给定公共Facebook帖子的URL,如何在FB Graph API中找到帖子对象?(第二,为什么这么多用户提要在通过API访问时是空的或几乎是空的?) 我们希望能够通过v2.x访问或发送帖子 Graph API,给定帖子的URL。这样做需要post的对象 ID,我们可以对它进行一些有根据的猜测,但是 通过API的实际对象被证明是不可靠的(适用于某些帖子,但 而不是其他人) 引入了API的v2,post ID通常看起来 格式为{app作用域用户id}{unique post id}。这是你的电话

给定公共Facebook帖子的URL,如何在FB Graph API中找到帖子对象?(第二,为什么这么多用户提要在通过API访问时是空的或几乎是空的?)

我们希望能够通过v2.x访问或发送帖子 Graph API,给定帖子的URL。这样做需要post的对象 ID,我们可以对它进行一些有根据的猜测,但是 通过API的实际对象被证明是不可靠的(适用于某些帖子,但 而不是其他人)

引入了API的v2,post ID通常看起来 格式为{app作用域用户id}{unique post id}。这是你的电话号码 有关在API中查找具有各种组合的帖子的一些尝试的详细信息 这些id(全局用户id、应用程序范围的用户id和帖子id)

  • 从一个简单的例子开始:。主要特点是它是公开的,不与其他帖子共享,最重要的是它没有照片,这为个人照片和照片集添加了额外的ID和URL。Evan的个人资料也是公开的,即不显示该内容当前不可用的通用信息

  • 尝试使用该URL中的纯post id,两者都会给出不支持的get请求(代码100)错误

  • Evan的全局用户id为525575504。将其作为前缀附加,但两者仍会给出相同的不受支持的get请求错误

  • 使用他的应用程序作用域用户id时出现相同错误

好的,让我们试试另一个方向。我们将翻阅用户的提要,直到找到有问题的帖子。感觉这更像是API的预期用例

  • 全局和应用程序范围都不返回任何内容,但返回两篇最近的文章,以及。我不知道为什么只有这两个人,尽管最近有很多其他的公开帖子。在两个api版本中,like都可以通过其
    id
    字段获取,即和,但在通过其id字段获取帖子时,这两个api版本都返回不支持的get请求错误,例如和

  • 正在尝试另一个公共帖子,这是一个带有图片的帖子:,所有的错误

  • 仅包含一个帖子,类似,并且为空


作为参考,这里是我们一直在跟踪这个问题的地方。

一个建议是调用api来编写facebook帖子,因为这些帖子会返回您可以使用的有效帖子id

第二,, 当你尝试

您可以看到,正如您编写的525575504一样,他的帖子ID不是以他的
公共ID
开头的_*

但他们仍然提出了不受支持的get请求


第三,因为上面的内容不起作用,所以这些帖子肯定是公开的吗?

基本上你需要
阅读流
(你的应用程序将不会获得授权)。是的,即使帖子是公开的,你仍然需要
read\u stream
才能获得对各种帖子的阅读权限

您可以在图形API资源管理器中轻松地处理此问题。首先给你的应用程序
read\u stream
权限来获取提要中项目的id–这将给你“表单应用程序范围的用户id下划线post id”的id。然后删除
read\u stream
(再次单击“获取访问令牌”并使用“清除”按钮),然后尝试几种
user\u*
权限–您将看到,对于大多数帖子,即使是公共帖子,您仍然只会收到“不受支持的获取请求”,这只意味着你不被允许读那个东西

例如,我有一篇公开帖子,其中分享了我时间轴上另一页的视频帖子,
类型
视频
状态类型
共享故事
,但无论是
用户状态
还是
用户视频
都不允许我阅读这篇帖子–只有在我再次授权
阅读流
时,我的应用程序可以阅读该帖子。与另一个类型为
status
和status\u type
mobile\u status\u update
的公共帖子相同–可通过
read\u stream
阅读,不具有任何
用户*
权限


简言之:使用API v2,您想要实现的目标已不可能实现,并且
读取流
的限制将仅授予没有官方FB客户端的平台上的应用。

正确的是,使用API v2,不再有
用户名
字段,您的应用程序也将不再允许使用全局用户id来请求用户详细信息,只允许使用应用程序范围内的用户id。我想知道的是,为什么首先需要基于帖子URL请求帖子详细信息?通常情况下,你的应用程序应该处理它以前通过API请求的数据,因此像这样的“外部”URL不会首先发挥作用。目标是让某人在自己的个人网站上发布FB状态的回复,然后使用应用程序将其发布到Facebook。这里有更多细节:。试试我的答案,也许它会让你找到正确的方向。谢谢你的回复,我会继续向你发送赏金,否则它就过期了。所以,我认为我们的应用程序是在read_stream上被推广的,至少现在看来是这样。你知道这会让我看到所有的帖子,还是我朋友的帖子,还是我自己的帖子?据了解,只有那些授予你应用程序权限的人的帖子,当你请求一个用户的feed时,你的应用程序才会看到
read\u stream
(用户自己的帖子,以及其他人在用户时间线上发布的帖子)。2015年4月30日之后,如果您的应用程序未经FB first审查,您的应用程序将无法再向他人请求任何权限(除了用户档案、好友和电子邮件的权限),并且
read\u stream
将不会被授予FB官方客户所在平台上的任何应用程序。是的,这与我们在年得出的结论基本相同。叹息(