ForHosting KIT · サイト取得・監視

RSS・Atom・JSON Feedの検出用linkタグを作成

ページが配信用リソースの場所をブラウザー、フィードリーダー、クローラーへ明示すると、フィードを確実に検出できます。この生成機能は、指定されたフィード形式と絶対URLから適切なメディアタイプを選び、HTML属性を壊す可能性がある文字をエスケープし、headに配置できる完全なlink rel alternate要素を返します。RSS、Atom、JSON Feedに対応し、未対応の形式やWeb用ではない不正なURLはエラーとして扱います。

● Beta無料・ブラウザ内で実行
ご利用方法 ウェブAPIメールTelegramアプリ 近日

公開する文書に合うフィード形式を選びます

検出タグのtype属性がURL先のリソースを正しく表している場合にのみ、そのタグは役立ちます。XML形式のRSS文書にはrss、XML形式のAtom文書にはatom、JSON Feed文書にはjson-feedを選択してください。それぞれapplication/rss+xml、application/atom+xml、application/feed+jsonに変換されます。この機能はリンク先を取得したり内容を調査したりしないため、サーバーが実際に返す形式と選択内容を一致させる必要があります。正確な宣言があれば、フィードリーダーは取得や解析の前にそのリソースを扱えるか判断できます。また、AtomのエンドポイントをRSSのメディアタイプで案内する、JSON Feedを一般的なJSONとして公開するといったコピー時の誤りも防げます。未知の名称を推測すると、もっともらしい誤ったタグが生まれて原因究明が難しくなるため、未対応値は拒否します。複数形式を提供するサイトでは、各エンドポイントについて実行し、生成された要素をすべてheadへ配置してください。各タグが、対応クライアントの選べる実在の代替表現になります。

公開用の正規フィードURLを指定します

訪問者のフィードリーダーから到達できる絶対HTTPまたはHTTPS URLを入力してください。例はhttps://example.com/feed.xmlです。絶対URLなら、コピーされたページ、キャッシュ済み文書、基準URLの処理が異なるクライアントでも、同じエンドポイントを参照できます。入力の前後にある空白を除去し、URLとして解析できることを確認したうえで、file、data、javascriptなどのスキームを拒否します。指定されたWeb URLは維持され、パス、クエリー、フラグメント、エスケープ表現、大文字と小文字を暗黙に書き換えません。HTML属性で特別な意味を持つ文字だけを生成タグ内で符号化するため、クエリー中のアンパサンドも安全になり、返却されるurlフィールド自体は変わりません。この検証が確認するのは形式とスキームです。所有権、稼働状況、コンテンツタイプ、リダイレクト、TLSは別途確認してください。公開後は対象URLが意図したフィードを正常に返すか実際にテストすることをお勧めします。

生成された要素を配置して確認します

フィードを検出可能にするHTMLページのheadへ、返されたタグをコピーしてください。結果にはrel="alternate"、形式固有のメディアタイプ、エスケープ済みURLのhrefが含まれます。入力に形式とURLしかないため、titleは意図的に追加しません。説明文を推測するより、サイト側のテンプレートで適切な言語と表現を指定するほうが確実です。メインフィードとトピック別フィードなど複数のフィードがある場合は、URLごとに要素を作り、利用者が区別する必要があればアプリケーション側で分かりやすいtitleを加えてください。テンプレートエンジンやセキュリティ層がマークアップを変換する場合があるため、デプロイ後に実際に配信されるソースも確認します。その後、少なくとも1つのフィードリーダーで検出を試し、エンドポイントの応答ヘッダーも調べてください。ブラウザー版とAPIは同じ決定的な関数を実行するので、同一入力から同じフィールドとタグが得られます。自動ビルドでは1回$0.002でAPIを呼び出せます。対話的な利用はブラウザー内でローカル実行されます。

公開サイトにRSS検出を追加

メディアタイプを暗記せずに、ブログやニュースサイトのRSSエンドポイント用head要素を生成できます。

Atom形式の選択肢を案内

他の配信形式とともに提供するAtomフィードへ、一貫した検出用マークアップを作成できます。

JSON Feedメタデータを公開

登録済みのJSON Feedメディアタイプを、正しくエスケープされたalternate要素で使用できます。

どのフィード形式に対応していますか?

rss、atom、json-feedを指定できます。それ以外の値は不正入力エラーになります。

APIの利用料金はいくらですか?

APIは1回$0.002です。ブラウザー版はローカルで無料実行できます。

フィードが存在するか確認しますか?

いいえ。ネットワーク通信は行わず、入力を検証してマークアップを作成します。

絶対URLが必要なのはなぜですか?

絶対HTTPまたはHTTPS URLなら、検出元ページや基準URLに関係なくフィードリーダーが一意に解釈できます。

URLの特殊文字は安全に処理されますか?

はい。HTML属性で特別な文字はタグ内でエスケープし、別のurlフィールドには前後の空白を除いた入力を保持します。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/web/link-rel-alternate-build

Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。

curl -X POST https://api.kit.forhosting.com/web/link-rel-alternate-build \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"feed_type":"rss","url":"https://example.com/feed.xml"}'
{
  "feed_type": "rss",
  "url": "https://example.com/feed.xml"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "web.link_rel_alternate_build",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

timeout_sec30
max_crawl_pages25
HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

KITの完全なドキュメントを見る →