Pubsubhubub, чтобы получить «POST» ответ от хаба

Я пытаюсь использовать Pubsubhubub для обновления RSS-каналов в реальном времени. Я использую PHP для этой цели.

Я подписался на thenextweb в качестве примера;

$hub_url = "http://pubsubhubbub.appspot.com/";
$callback_url = "http://xx.com/rss/callback.php";
$feed = "http://feeds2.feedburner.com/thenextweb";
$sub = new Subscriber($hub_url, $callback_url);
$status = $sub->subscribe($feed);

Я получаю, что концентратор возвращает код 202, и после этого «GET» отвечает на мой callback.php с помощью hub_challenge и других вещей. Я следовал советам повторения этого числа в уроках, и, следовательно, концентратор сможет обновлять мой обратный вызов.

if ($method == 'GET' && $_GET['hub_mode'] == 'subscribe') {
$challenge = $_GET['hub_challenge'];
header('HTTP/1.1 200 "OK"', null, 200);
header('Content-Type: text/plain');
echo $challenge;
}

Вот как я повторяю номер вызова. Проблема здесь в том, что я не получаю никаких других сообщений от концентратора, хотя у меня есть условие для обработки любого сообщения POST в моем обратном вызове.

else if ($method == 'POST') {
$updates = json_decode(file_get_contents("php://input"), true);
//doing stuff with the data here
}

Я не уверен, если проблема с эхо-частью или после этого. У кого-нибудь есть похожие проблемы? Что я делаю неправильно?

2

Решение

Я только что решил проблему. Видимо, я использовал другой topic_url, я использовал эту ссылку: http://feeds.feedburner.com/TheBoyGeniusReport?format=xml. Вместо этого просмотрите исходный код страницы и убедитесь, что вы используете ссылку внутри href. Выделенная ссылка ниже — это то, что вы должны использовать.

… xmlns: atom10 = «http://www.w3.org/2005/Atom» rel = «self» type = «application / rss + xml» HREF =»http://feeds.feedburner.com/TheBoyGeniusReport«

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]