应该在Superfeedr的回调文件中写什么?

时间:2012-01-07 20:29:59

标签: php api pubsubhubbub rss-reader superfeedr

我需要生成RSS提要并获取帖子的标题和网址等。我决定使用Superfeedr。所以在这种情况下,我是Superfeedr的订户。有回调(订户URL)字段来获取数据,但我不知道应该在回调文件中写什么。我研究了网络示例代码,但我没有发现示例代码。顺便说一下,我想在PHP中完成这个过程。因此,如果你知道我应该写什么来写这个文件,请发表评论。

2 个答案:

答案 0 :(得分:2)

约翰,我想你明白了......这很好。现在,在PHP中编写什么:这个回调url(你的PHP文件)将在两种不同的情况下被调用:

  1. 验证您的意图(确认您要订阅)
  2. 通知您新内容。
  3. 我不是PHP人,但我会为你描述算法

    要区分这两者,您只需要查看请求的类型。如果它是GET请求,那么,它是对intent的验证,如果它是POST请求,那么它就是新内容的通知。

    如果是内容验证,你只需要回应作为GET参数提供的hub.challenge(我相信echo $_GET['hub.challenge'];应该有效)。您还应该验证您是否真的想要订阅,但是您的应用程序的逻辑和我不知道它(大多数人只是在他们的数据库中查找$_GET['hub.topic'],如果它在那里,请回应挑战。如果没有,请回复其他内容。

    如果是新内容的通知,则会更复杂一些。你必须访问HTTP请求的BODY(再次,不确定PHP是如何做到的,但我确定有人可以提供帮助),然后解析它以提取标题和URL,并按照你的需要处理它们(大多数人们会在他们的数据库中保存它。)

    我希望这有帮助!

答案 1 :(得分:0)

我在php中使用此代码。希望它可以帮助某人

<?php
  if(isset($_Get["hub_challenge"])){
   echo $_Get["hub_challenge"];
   return;
}