JA

URL エンコーダー / デコーダー

URLエンコードとは?

URLエンコード(正式にはパーセントエンコーディング、RFC 3986で定義)は、URLで安全でない文字や予約済みの文字を%の後に2桁の16進数を続けた形式に変換します。スペースは%20、&は%26、=は%3D、?は%3Fになります。これにより、クエリパラメーター、パスセグメント、フラグメント識別子に特殊文字が含まれていてもURLの構造が有効に保たれます。予約されていない文字(英字、数字、-、_、.、~)を除くすべての文字は、標準URLではパーセントエンコードする必要があります。

URLエンコードは、APIリクエストの構築、クエリ文字列の解析、リダイレクトURLの作成、Webアプリケーションでのユーザーサブミットコンテンツの処理において重要です。よくあるバグは、URLに生の特殊文字を埋め込むことです:クエリパラメーター値の中の&がパラメーター区切り文字として解析され、URL構造が壊れます。検索クエリ、トークン、スペースを含むファイル名、あらゆるユーザー生成テキストは、URLに配置する前に適切にエンコードする必要があります。URLデコードは、ログファイルやAPIレスポンスのエンコード済み値を読む際にも同様に役立ちます。

このツールはRFC 3986準拠のencodeURIComponent / decodeURIComponent関数を使用しており、A–Z、a–z、0–9、-、_、.、~以外のすべての文字をエンコードします。注意:encodeURIComponentはスラッシュ(/)もエンコードするため、URL全体ではなく個々のクエリパラメーター値のエンコードに使用するものです。:、/、?、#などの構造的な文字を保持したままURL全体をエンコードする場合はencodeURIを使用してください。すべての処理はブラウザ内でローカルに行われます。

よくある質問

URLエンコードとは何ですか?
URLエンコード(パーセントエンコーディング)は安全でない文字を%の後に2桁の16進数を続けた形式に変換します。例えばスペースは%20、&は%26、=は%3Dになり、URLの構造が有効に保たれます。
なぜURLに値をエンコードする必要があるのですか?
URLで使用できる文字は限られています。クエリパラメーターに&、=、?、#、スペースが含まれている場合、URLに配置する前にエンコードする必要があります。そうしないとURL構造が壊れてデータが破損します。
パーセントエンコードされたURLをデコードするにはどうすればいいですか?
エンコードされたURLまたは値を入力フィールドに貼り付け、「デコード」を選択してください。ツールがすべての%XXシーケンスを元の読みやすい文字に変換します。
このツールでエンコードされる文字はどれですか?
英字(A–Z、a–z)、数字(0–9)、ハイフン(-)、アンダースコア(_)、ピリオド(.)、チルダ(~)以外のすべての文字がエンコードされます。これらはRFC 3986でURLで常に安全とされる予約されていない文字です。
スペースの%20と+の違いは何ですか?
%20はスペースの標準パーセントエンコーディングです(RFC 3986)。+記号はapplication/x-www-form-urlencodedフォーマット(HTMLフォームの送信)でのみスペースを表します。現代のURLとAPIでは%20が推奨され、あいまいさがありません。
URLのクエリパラメーター値をエンコードするにはどうすればいいですか?
URL全体ではなく、パラメーター値のみをエンコードしてください。例えば値が「hello world」の場合、「hello%20world」にエンコードしてURLに追加します。URL全体をエンコードすると://や構造的なスラッシュもエンコードされてしまいます。
URLの%3Dはどういう意味ですか?
%3Dは=文字のパーセントエンコード形式です。=はクエリ文字列でパラメーター名と値を区切る(key=value)ため、パラメーター値の中の=はあいまいさを避けるために%3Dとしてエンコードする必要があります。