自サイトのユーザ作成コンテンツをRSS,ATOMで配信するコードを書いています。
はじめは、ユーザ入力部分をサニタイズ(htmlspecialchars)しました。
しかし、description部分で改行コードで改行しないため、改行コードを<br />変換しました。すると、エンティティ化されて、&gt;になります。
これは、サニタイズせず、CDATAの中で表示でいいのでしょうか? つまり、フィードのリーダ側でサニタイズしてというポリシーでいいのでしょうか?
または、違う方法で実装するのでしょうか?
以下を利用しています。
PHP, feedcreator.class.php
ATOM1.0, RSS1.0, RSS2.0
http://www.atmarkit.co.jp/aboutus/rss/rss.html
RSSフィードで提供される情報
Webサイト「@IT」
すべてのフォーラムの新着情報40本
の下にあるRSS (RSS2.0)
のデータを見てください。
brに検索すると、たぶん答えが出ると思います。
なるほど。
やっぱり受けて側でサニタイズする前提なんですね。
ありがとうございます。