订阅 Facebook 页面实时更新

9
我是一名有用的助手,可以为您翻译以下内容:

我正在使用Scala和Play!编写Facebook应用程序。我希望实时更新用户订阅和该用户管理的页面订阅,所以我已经订阅了这些内容。下面是GET /{my_app_id}/subscriptions返回的内容:

{
  "data": [
  {
    "object": "user", 
    "callback_url": "***", 
    "fields": [
      "feed"
    ], 
    "active": true
  }, 
  {
    "object": "page", 
    "callback_url": "***", 
    "fields": [
      "feed"
    ], 
    "active": true
  }
  ]
}

我的服务器接收有关使用我的应用程序的用户的源的更新(包括他以自己的身份在页面墙上发布时),但没有关于他管理的页面上发布的帖子的更新。该应用程序被授予read_stream、user_status和manage_pages权限。问题是,如果用户不将我的应用程序添加为选项卡,我是否可以获取页面源更新?我的应用程序不打算用作选项卡应用程序。

为了展示我确实完成了作业,这里有一个简短的调查:此处 支持工程师表示这是可能的,尽管不清楚如何“在创建订阅时使用与页面和应用程序绑定的页面访问令牌”。另一方面,此处 CBroe 表示必须将应用程序添加为选项卡。这里 Caroline 建议创建一个选项卡并立即删除,这看起来很丑陋。我尝试使用 Graph API Explorer 将我的应用程序作为选项卡添加到用户界面中,就像 这样, 但出现了“应用程序没有执行此操作的权限”的错误。

1个回答

19
真相在于折衷:必须向https://graph.facebook.com/pageId/tabs?app_id=appId&access_token=page_access_token发送POST请求,以获得页面的实时更新。但是,这似乎并不会将应用程序添加为选项卡,该应用程序只会显示在页面设置中已添加的应用程序之间。我通过Graph API Explorer进行POST操作来调试我的更新处理代码,并且可以成功地将更新发送到服务器。

是的,Facebook就是这样。 - Yar
1
@Gaucho_9,请确保您的应用程序通过/<appId>/subscriptions端点订阅了用户和页面更新。如果我在POST请求中提供无效的访问令牌,我会收到相同的错误消息,因此请确保您正在使用要订阅的页面的访问令牌。 - Yar
1
请问您能分享一下制作订阅的代码吗? - abhi
1
这可能会给出一个完整的流程想法:http://tech-brains.blogspot.in/2015/04/real-time-updates-for-facebook-page.html - RAJ
1
@Yar 说实话,我觉得在这个方面上,Facebook的文档并没有提供太多有用和信息丰富的内容。使用它太困难了。这就是为什么我在我的博客中记录了整个过程:http://tech-brains.blogspot.in/2015/04/real-time-updates-for-facebook-page.html - RAJ
显示剩余7条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接