コンテンツへスキップ
EVOA Toolbox

URLデコード

パーセントエンコードされたURLやクエリ文字列を、読みやすいテキストに戻します。不正なシーケンスはクラッシュせず、位置を特定して表示します。

ブラウザー内でローカルに処理されます。テキストはアップロードされません。

ツールを読み込み中…

このツールでできること

https%3A%2F%2Fexample.com%2Fcaf%C3%A9%20menu のような文字列を、読めるテキストに戻します。リダイレクトURL、アクセス解析のパラメーター、OAuthのコールバック、ログファイル、Webhookのペイロードをデバッグするときに役立ちます。

実際のデータは、コピー&ペーストで途中が切れていたり、エンコードされていない % が含まれていたり、UTF-8として無効なバイトが含まれていたりと、壊れていることがよくあります。デコーダーはエラーを黙って無視せず、最初の不正なシーケンスの位置を示します。そのうえで、有効なシーケンスはすべてデコードし、壊れたものはそのまま残したベストエフォートの結果も表示します。

コンポーネントモード(すべてをデコード)か、URL全体モード(%2F や %3F などの予約文字のエスケープを残し、URLの構造を変えない)を選べます。フォームエンコードされたデータ向けに、+ をスペースとして扱うこともできます。デコードはブラウザー内でローカルに行われます。

使い方

  1. 1エンコードされたテキストまたはURLを入力欄に貼り付けます。
  2. 2すべてをデコードするなら「コンポーネント」を、%2F などの予約文字をエンコードされたままにするなら「URL全体」を選びます。
  3. 3データがHTMLフォームやクエリ文字列から取得したものである場合は、「+ をスペースとして扱う」をオンにします。
  4. 4エラーが表示されたら、示されている位置を確認します。デコードされたテキストをコピーするか、ダウンロードします。

対応形式

入力はパーセントエンコードされたテキスト(UTF-8のバイト列)、出力はプレーンテキストです。

プライバシー

このツールはブラウザー上で動作します。入力されたデータはお使いのデバイス上で処理され、当社のサーバーには送信されません。

制限事項

  • パーセントシーケンスはUTF-8のバイトである必要があります。Latin-1(é を表す %E9 など)のような従来のエンコーディングは、無効なUTF-8として報告されます。
  • 文字どおりの + は、オプションを有効にした場合にのみスペースに変換されます。URLのパスでは + はプラスを意味するためです。
  • 2回デコードすると意味が変わることがあります(%2520 は %20 になり、さらにスペースになります)。二重にエンコードされているデータだと分かっている場合を除き、デコードは1回にしてください。
  • 報告されるのは最初の不正なシーケンスのみですが、ベストエフォートの出力では、すべての不正なシーケンスが変更されずに残されます。

よくある質問

「不正なパーセントシーケンス」とは何ですか?

% の後には、ちょうど2桁の16進数が必要です。「50% off」のようなテキストや、途中で切れた文字列(…%2)は、このルールに反します。デコーダーはその位置を示し、ベストエフォートの結果ではそれらの文字をそのまま残します。

URL全体モードで %2F がデコードされないのはなぜですか?

デコードすると、値の中のパス区切り文字が本物の区切りに変わってしまい、URLの意味が変わるためです。コンポーネントモードではデコードされます。

無効なUTF-8とは何ですか?

有効な文字を構成しないパーセントエンコードされたバイトのことで、たとえば単独の %FF や、不完全なマルチバイトシーケンスなどです。多くは、従来のエンコーディングや途中で切れたデータが原因です。

関連ツール