Веб-суб
WebSub (ранее PubSubHubbub ) — это открытый протокол для распределенной связи публикации и подписки в Интернете . [1] Первоначально разработанный для расширения протоколов Atom (и RSS ) для каналов данных, этот протокол можно применять к любому типу данных (например , HTML , тексту, изображениям, аудио, видео), если он доступен через HTTP. Его основная цель — предоставлять уведомления об изменениях в режиме реального времени, что улучшает типичную ситуацию, когда клиент периодически опрашивает сервер каналов через произвольный интервал. Таким образом, WebSub предоставляет push-уведомления HTTP, не требуя от клиентов тратить ресурсы на опрос изменений.
В октябре 2017 года PubSubHubbub был переименован в WebSub для простоты и ясности. [2] По состоянию на январь 2018 г. [update]протокол WebSub был принят W3C в качестве рекомендации. [3]
Протокол
[ редактировать ]В рамках WebSub существует экосистема издателей, подписчиков и хабов. [4]
Подписчик сначала получает контент из HTTP-ресурса ( URL ), запрашивая его у веб-сервера. Затем подписчик проверяет содержимое ответа, и если он ссылается на концентратор, подписчик может подписаться на URL-адрес этого ресурса (в спецификации он называется «темой») в этом концентраторе. Подписчику необходимо запустить сервер, доступный через Интернет, чтобы концентраторы могли напрямую уведомлять его об обновлении любой из его подписанных тем, используя механизм веб-перехватчика .
Издатели предоставляют свой контент путем включения ссылок на хабы в заголовки HTTP. Они отправляют уведомления в указанные хабы всякий раз, когда что-то публикуют. Таким образом, когда происходит событие публикации, издатель вызывает свои концентраторы, а концентраторы вызывают своих подписчиков.
WebSub включает простой механизм проверки намерений для предотвращения неправомерных подписок, а механизм проверки позволяет подписаться на частные или защищенные веб-ресурсы. Когда подписчик отправляет запрос на подписку в концентратор, необходимо указать адрес подписчика и код. Хаб немедленно отправляет подписчику проверочное сообщение с URL-адресом темы и приведенным выше кодом. Запрос на подписку будет принят только в том случае, если подписчик отправит положительный ответ на запрос проверки хаба.
Чтобы обеспечить безопасную цепочку, подписчики должны поделиться секретом с хабом, который будет использоваться хабом для вычисления ключа HMAC , который будет отправлен подписчику. Последний может затем легко проверить происхождение, сравнив предоставленную подпись с аналогично вычисленной подписью на своей стороне.
Использование
[ редактировать ]WebSub используется для распространения контента на многих веб-сайтах, включая все блоги, обслуживаемые Blogger и WordPress.com . [5] новостные сайты, включая CNN и Fox News , а также социальные сети, такие как Diaspora* , Mastodon , MySpace. [6] или Medium.com . [7]
Службы подписки («читатели каналов») включают Flipboard , Feedly , NewsBlur и другие популярные варианты. [8]
В число поставщиков центров, размещаемых сообществом, входят pubsubhubbub.appspot.com (управляемый Google ), [9] pubsubhubbub.superfeedr.com (управляется Superfeedr ), [10] и websubhub.com. [11]
Superfeedr предоставляет подробное руководство по реализации PubSubHubbub. [12]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ ПабSubHubbub
- ^ «ВебСуб@W3C» .
- ^ «Рекомендация WebSub W3C от 23 января 2018 г.» .
- ^ «ВебСуб» .
- ^ «Руб-а-даб-даб в PubSubHubbub» . Блог WordPress.com . 3 марта 2010 г. Проверено 6 февраля 2018 г. .
- ^ «Компании» . pubsubhub — Google Code . Проверено 2 сентября 2014 г.
- ^ «Блог Superfeedr — Medium поддерживает PubSubHubbub» . 18 февраля 2014 года . Проверено 3 мая 2015 г.
- ^ «Состояние PubSubHubbub» . Блог Суперфидр . 4 июля 2013 года . Проверено 2 сентября 2014 г.
- ^ Добро пожаловать в хаб Google PubSubHubbub!
- ^ Superfeedr Открыть PubSubHubbub Hub
- ^ WebSubHub
- ^ Блог Superfeedr — Как внедрить PubSubHubbub , 10 февраля 2015 г.