特殊な HTML エンティティを使用した文字列のデコード
エンコードされた HTML エンティティを含む JSON データを受信する場合、それらを適切にデコードすることが重要です。これを行う簡単な jQuery アプローチは次のとおりです。
function decodeHtml(html) { return $('<div>').html(html).text(); }
この手法は効果的ではありますが、「ハック」とみなされます。より堅牢で推奨される方法は、次のように DOMParser を利用することです:
function decodeHtml(html) { var txt = document.createElement("textarea"); txt.innerHTML = html; return txt.value; }
この方法はエンティティをデコードするだけでなく、HTML タグも保存するため、より包括的で広く受け入れられるアプローチになります。
デコードプロセスを示す例:
Input: Entity:&nbsp;Bad attempt at XSS:<script>alert('new\nline?')</script><br> Output: Entity: Bad attempt at XSS:<script>alert('new\nline?')</script><br>
以上がJSON データ内の HTML エンティティを効果的にデコードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。