WebSub
パブリッシャーとハブとで合意できていればいかなる形で送ってもいいとのこと。まじか。
Superfeedr
hub.mode="publish"とhub.url=<url>を送る
hub.url[]=<url1>、hub.url[]=<url2>……として複数のhub.urlを送れる
hub.url=<url1>,<url2>という送り方もできる
hub.contentに新しいエントリーの内容を入れられる
hub.signatureでhub.contentに署名できる
明記されていないけどapplication/x-www-form-urlencodedで送ると思われる
Google PubSubHubbub Hub
POSTでapplication/x-www-form-urlencodedを送る
hub.mode=publishにする
hub.urlでURIを送る
複数繰り返すことで複数のURIを送れる
Switchboard
POSTリクエストを送る
hub.mode=publishにする
hub.urlでURIを送る
WebSubから受け取る
WebSubのハブから受け取る
リクエスト
POSTリクエスト
content-typeヘッダーが必須
配信されたコンテンツのコンテントタイプを示す
トピックURLのコンテンツ全体を含む必要がある
例外:AtomやRSSフィードの、既に配信されたエントリーは送らなくてもよい
ファイルの場合はファイル全体を含むのかな・・・。
それよりもファイルを示すAtomフィードとかOPDSとかを配信せよということかな
rel=hubなlinkヘッダーが一つ以上必要
rel=selfなlinkヘッダーが一つ必要
更新されたトピックを指す
サブスクリプション全体ではない
レスポンス
2xxでレスポンスする
サブスクリプションが削除されている場合は410
2xxでも410でもないレスポンスは失敗と見做す
つまり3xxによるリダイレクトはできない
レスポンスボディは無視される
失敗の場合はリトライされる(かも知れない)
登録時にリクエストしていれば署名が付いて来る