HTMLエンティティ エンコーダー / デコーダー
特殊文字をHTMLエンティティに変換し、エンティティを文字にデコード
入力テキスト
結果
使用例
XSS防止
ユーザー入力表示時のクロスサイトスクリプティング(XSS)攻撃を防ぐためにHTMLタグと特殊文字をエンコードします。
HTMLソース表示
HTMLコードをレンダリングされずにWebページ内でテキストとして安全に表示できるようにエンコードします。
特殊文字
&、<、>などのHTMLエンティティをテキスト処理のために元の文字にデコードします。
機能
XSS保護
Webアプリケーションでのクロスサイトスクリプティング攻撃を防ぐためにユーザー入力をエンコード
双方向変換
文字をエンティティにエンコードし、エンティティをシームレスに文字にデコード
名前付きと数値モード
読みやすい名前付きエンティティまたは汎用的な数値エンティティから選択
プライバシー優先
すべての処理がブラウザ内でローカルに実行され、サーバーにデータは送信されません
使い方
エンティティモードを選択
&のような読みやすいエンティティには名前付きモード、&形式には数値モードを選択します。
テキストを入力
エンコードしたいHTMLコードやテキストを入力または貼り付け、またはデコードするエンコード済みエンティティを貼り付けます。
エンコードまたはデコード
エンティティに変換するにはエンコードを、エンティティを文字に戻すにはデコードをクリックします。結果をコピーします。
よくある質問
HTMLエンティティエンコーダーとは
ユーザー入力をWebページに貼り付けてレイアウトが崩れた経験があるなら、HTMLエンティティの重要性はお分かりでしょう。<、>、&、"などの文字はHTMLで特別な意味を持つため、DOMに入る前にエスケープする必要があります。このツールはその変換を瞬時に行います。
エンコードとデコードの違い
エンコードは生の文字を安全なエンティティ参照(<、&など)に変換し、ブラウザがマークアップではなくテキストとして表示するようにします。デコードはその逆で、データベースやAPIからエンティティエンコードされた文字列を取得して元の文字に戻す場合に便利です。
主な使用場面
最も重要なのはXSS対策です。ユーザー入力をレンダリング前にエンコードすることで、大きな攻撃経路を塞ぐことができます。また、ブログやドキュメントでコード例を表示する際にも活用されています。
実用的なヒント
最も頻繁に使う5つの文字(&、<、>、"、')には名前付きエンティティを使いましょう。コードレビューで見つけやすくなります。名前付き等価物がない拡張Unicode文字を扱う場合は数値モードに切り替えてください。
プライバシーについて
すべてのエンコードとデコードはブラウザ内で直接行われます。アップロードもログ記録もありません。