1

这是我第一次尝试开发 Facebook 应用程序,如果我的问题太天真,请提前抱歉。

我需要做的是制作一个类似聊天的 facebook 应用程序,其中:

  1. 用户可以在墙上写一些东西
  2. 该应用程序应该能够检测到此事件并向我自己的外部 Web 服务发送 HTTP 请求,该服务将提供响应(文本)
  3. 将该文本作为评论发布
  4. 用户应该能够通过输入另一个评论来继续对话(在这种情况下,我们回到步骤#2)

基本上,这将非常类似于: https ://www.facebook.com/SkyscannerFlightSearch

我认为一种(丑陋的)方法是制作一个脚本,通过使用 Graph API 来搜索新的墙条目/评论并在无限循环中发布回复,但这显然是次优且昂贵的。

每次输入墙帖/评论时,有什么方法可以让 facebook 调用某个 url?或者像Twitter 的基于长轮询技术的流 API 之类的东西?通过假设这种解决方案,我是在正确的方向上还是我完全错过了重点?

提前致谢。

4

2 回答 2

1

詹保罗

我自己也在做一些非常相似的事情。

到目前为止,我有一个“循环”,可以设置为 facebook 上的任何页面、组或应用程序。

示例:https ://shawnsspace.com/plugins/wallfeed.php 我的页面墙。示例:https ://shawnsspace.com/plugins/wallfeed.php?pageid=19292868552&ptype=feed&limit=40 Facebook 平台墙。

通过一些烫发、表格和用户 access_tokens,我可以使墙可张贴。Asper UGLY - 你不需要循环运行它,Facebook 支持实时更新,并会在用户或页面发生更改时向你的应用程序发送响应。

更多:http: //developers.facebook.com/docs/api/realtime

于 2011-08-29T14:15:43.217 回答
1

感谢您的输入。我尝试通过使用 object=user 和 fields=feed 来使用实时 API。如果我正确理解了文档,这应该会导致每次用户在我的应用程序墙上写东西时都会调用我的回调 url (POST)。

我收到了最初的 GET 请求,但从未收到过 POST。这是当前配置:

{
   "data": [
      {
         "object": "user",
         "callback_url": "http://XXX.XXX.XXX.XX:8888/",
         "fields": [
            "feed"
         ],
         "active": true
      },
      {
         "object": "page",
         "callback_url": "http://XXX.XXX.XXX.XX:8888/",
         "fields": [
            "picture"
         ],
         "active": true
      }
   ]
}

我注意到各种用户评论报告了对该 API 可靠性的不同担忧。此外,这里: http: //developers.facebook.com/docs/reference/api/page/ 它说:“注意:页面签入总数尚不支持实时更新。” ...我不确定这到底是什么意思。

作为记录,我用于测试的应用程序页面是: http ://www.facebook.com/pages/testgiamp/187148861354102?sk=wall

于 2011-08-30T09:10:14.193 回答