ssecutils

🔗 URL Encoder / Decoder

URLとテキストの相互変換。クエリパラメータ用の encodeURIComponent と URL全体用の encodeURI を切替可能。 すべてブラウザ内で処理され、入力データはサーバーに送信されません。

エンコード方式
0 文字 · 0 bytes

💡 URL エンコードについて

  • URLで使えない文字(日本語・スペース・記号など)を %XX 形式(パーセントエンコーディング、RFC 3986)に変換します。
  • encodeURIComponent: クエリパラメータのとして使う文字列に推奨。/ ? = & # もエンコードするため、URL構造を壊しません。
  • encodeURI: 完全なURL文字列をエンコードする用途。URL構造を表す文字(/ ? = など)はそのまま残します。日本語パスを含むURLの正規化に便利です。
  • 日本語など UTF-8 マルチバイト文字も正しく変換されます(1文字あたり %XX%XX%XX のように複数バイト分エンコード)。
  • デコード時に不正な % シーケンス(例: %ZZ)が含まれているとエラーになります。
使い方と解説

URLとクエリ文字列を安全に変換する

URL Encoder / Decoder は、日本語URL、クエリパラメータ、予約文字をエンコード・デコードするツールです。APIリクエスト、リダイレクトURL、OAuthのcallback URL確認などで使えます。

入力データの扱い

URL文字列の変換はブラウザ内で完結し、入力したURLはsecutilsのサーバーへ送信されません。

URLエンコードが必要な理由

URLにはそのまま使えない文字や、意味を持つ記号があります。日本語、スペース、&、=、? などを適切に変換しないと、クエリ文字列が壊れたり、意図しないパラメータとして解釈されることがあります。

encodeURIとencodeURIComponent

URL全体を扱う場合と、クエリ値の一部だけを扱う場合では使う関数が異なります。特にパラメータ値にはencodeURIComponentを使う場面が多く、違いを確認しながら変換できます。

同じ文字列を2つの方式に通すと違いが分かる

https://example.com/path?q=a b&r=1 を両方の方式で変換すると差がはっきりします。URL全体向けの方式では https://example.com/path?q=a%20b&r=1 となり、:// や ? & = は構造を表す記号として残ります。一方コンポーネント向けの方式では https%3A%2F%2Fexample.com%2Fpath%3Fq%3Da%20b%26r%3D1 となり、記号がすべて変換されます。リダイレクト先URLをクエリパラメータに埋め込むときに前者を使ってしまうと、埋め込んだURLの & がパラメータの区切りとして解釈され、値が途中で切れます。オープンリダイレクトの調査でよく見る壊れ方です。なお日本語1文字「あ」は %E3%81%82 と3つの%表記になります。UTF-8で3バイトだからで、文字数制限のあるフォームで想定より早く上限に達する原因になります。

URL Encoder / Decoder でできること

  • URL全体とコンポーネント単位の変換
  • 日本語URLやスペースを確認
  • クエリ文字列のデバッグに使える
関連ツール

次に使うツール

作業の流れに近いツールへすぐ移動できます。

解説記事

このツールに関連する解説記事

すべての記事 →