私はUTF-8 XMLレスポンスを返していますが、いくつかの要素にはユーザが提供するコンテンツがありますので、正しくエスケープされていることを確認する必要があります。 htmlspecialchars(..., ENT_COMPAT, 'UTF-8')
を使用してXML要素テキストを適切にエスケープするには十分ですか?はHTTPレスポンスでXML要素のコンテンツをエスケープするのに十分なhtmlspecialcharsですか?
2
A
答えて
1
私は正確にわかっていません... xmlはhtmlまたはhtmlをxmlの内側にしたいですか? 後者の場合は、CDATAを使用してみませんか?
<xmlelement>
<![CDATA[<span>John Smith</span>]]>
</xmlelement>
0
http://www.w3.org/TR/2008/REC-xml-20081126/
2.2文字 ...
[2] Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF] /* any Unicode character, excluding the surrogate blocks, FFFE, and FFFF. */
だから、これはタブ、CR、LFすることなく、低域<の0x20に文字を格納する方法がないことを示しています。 Additionalでは、xmlパーサは改行を正規化しなければなりません。それはCR LFをLFに変換しなければなりません。
したがって、XMLでバイナリ文字列を転送することを可能にする通常ノードもCDATAセクションもありません。あなたがそれをbase64に変換しなければならない場合、またはtransportは数字のリストのようなものです。
関連する問題
- 1. 要素を十分に整える
- 2. mysql_real_escape_string(htmlspecialchars($ value));十分ですか?どのように私eas easly改善することができますか?
- 3. SQLiteは十分ですか?
- 4. ユニットテストは十分ですか?
- 5. XSD要素に1つのxml子要素とコンテンツ(html/xmlを含む)
- 6. AndroidでHTTP経由でXML文書要素を投稿するには?
- 7. ソートにFactoryが不十分なのはなぜですか?
- 8. xsdファイル(XMLスキーマ)の要素または属性名にコロン ':'をエスケープする
- 9. Selenium webdriver(ブラウザ)でHTTPレスポンス(HTMLコンテンツ)をレンダーする
- 10. mysql_real_escape_string()はMySQL REGEXPに十分ですか?
- 11. typescriptは十分に堅牢ですか?
- 12. 不十分なRESTリクエストのHTTPステータスコードを修正します
- 13. HTTP 200レスポンスまだ有効なコンテンツはありませんか?
- 14. XML要素が無効なのはなぜですか?
- 15. HTTPヘッダー "firefox"の "q"要素ですか?
- 16. HTTPリクエストの要素がない - 空または空ですか?
- 17. CouchDBのHTTPレスポンスからJSONコンテンツを圧縮するにはどうすればよいですか?
- 18. Windows用のマルチメディアリッチなアプリケーションは、Pythonで十分ですか?
- 19. HTTPヘッダー:Cache-Controlで十分ですか、それでもExpiresが必要ですか?
- 20. 休止状態のステートレスセッションに関する十分な情報が必要です
- 21. リストビューのカスタム行 - 十分ではない
- 22. いくつかのパラメータでHTTPリクエストを書いてXMLレスポンスを取得する
- 23. htmlspecialchars()で単一引用符だけをエスケープします。
- 24. 別のxmlのxml要素にアクセスできますか?
- 25. JQueryで要素のコンテンツを削除するには?
- 26. 大きなajaxyアプリでは十分な$ .empty()ですか?
- 27. なぜ "htmlspecialchars"が遅いのですか?
- 28. PHPはウェブページを保護するのに十分な$ _SESSIONですか?
- 29. はエントロピー部分に十分なCAVLCデコーダです
- 30. "Transfer-Encoding:chunked"のHTTPレスポンスのチャンクサイズは、HTTP上にあるプロトコルにとって重要ですか?
そのtext/xmlレスポンス、htmlはありません。 ''はユーザーが提供しているので、CDATAの場合でも、悪意のあるユーザーがxssなどを避けるために ']]'を入力しないようにする必要があります。 –
http://stackoverflow.com/questions/223652/is-there-a-way-to-escape-a-cdata-end-token-in-xmlを参照してください。その文字列を明示的にチェックして文字列を除去する必要があります。 –