フィードリーダーがページにアクセスしていることを検出する方法は?

StackOverflow https://stackoverflow.com/questions/302572

質問

ユーザーがブラウザであるかRSSリーダーであるかに応じて、単一のURLから異なるコンテンツを提供したい(したがって、example.com / feed URLを避ける)。したがって、www.example.com / postsは(X)HTMLページをブラウザーに返し、RSSフィードをフィードリーダーに返します。

これを達成するためのアーキテクチャ上最も適切な方法は何ですか?

PSソフトボールの質問はどうですか...:)

役に立ちましたか?

解決

すべての状況でそれが可能かどうかはわかりません。 SafariのRSSリーダーを使用するユーザーを考えてみましょう。RSSフィードをダウンロードするときに同じブラウザー識別子文字列を使用すると仮定すると、2つのモードを区別するにはどうすればよいですか

このアプローチを本当に考え直したいのですが、個別のフィードURLに問題はありません。

他のヒント

User-Agent HTTPヘッダーを紹介します。ページにアクセスするクライアントの識別文字列が含まれます。偽装することはできますが、RSSリーダーかブラウザかを100%確信することはできません。

さらに、RSSリーダーはrss content-typesのAcceptヘッダーを送信する場合があり、これを使用して contentを実装できますネゴシエーション Apacheのマルチビュー)。

ただし、確実な解決方法はないため、RSSよりも頻繁にHTMLを提供する側で失敗する方がいいでしょう。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top