コンテンツへスキップ
Toova
すべてのツール

オンラインでURLエンコードとデコード

プライバシー優先設計 — すべてブラウザ内で処理します

URLで安全に使えるよう文字列をエンコードしたり、パーセントエンコード列を平文へデコードしたりできます。Toovaはすべての予約文字を正しく扱い、UTF-8のマルチバイト列にも対応し、すべてブラウザ内で動作します。

URLエンコードの実体

URLは限られたASCII文字しか許容しません。それ以外、つまりスペース、アンパサンド、スラッシュ、クエスチョンマーク、そしてASCII外の文字はすべて %XX 形式でパーセントエンコードする必要があります。これを誤ると、リンクが壊れたり、クエリ文字列が誤って解析されたり、フォームデータがサーバーで化けたりします。Toovaは両方向を安全に扱い、UTF-8マルチバイト列にも対応します。

コンポーネントと完全URL

URLエンコードには2種類あります。コンポーネントエンコードはすべての予約文字をエスケープします。クエリ文字列のパラメーターに値を埋め込むときに使います。完全URLエンコードはスラッシュ、クエスチョンマーク、アンパサンドをそのまま残し、URL全体を有効に保ちます。Toovaは両方のモードを用意しているため、値だけをエンコードするのか、リンク全体をエンコードするのかを目的に応じて選べます。

ブラウザ内のみ

エンコードとデコードはすべてブラウザ内で行われます。アップロードもログ記録もありません。エンコード対象がユーザーID、セッショントークン、機密情報の場合でも、第三者に見られる心配なく貼り付けられます。最初の読み込み後はオフラインでも動作し、エンコード中に外向きの通信は発生しません。

よくある質問

encodeURIとencodeURIComponentの違いは何ですか?
encodeURIはURLの構造文字(スラッシュ、クエスチョンマーク、アンパサンド)をそのまま残すため、完全URLのエンコード向きです。encodeURIComponentはすべてをエスケープするため、クエリ文字列の単一パラメーターに値を埋め込むときに使います。
UTF-8を扱えますか?
はい。ASCII外の文字は、パーセント表記のマルチバイトUTF-8列としてエンコードされます。デコードすると、絵文字やCJKテキストも含めて元の文字が完全に復元されます。
スペースが + になることも %20 になることもあるのはなぜですか?
application/x-www-form-urlencoded(フォーム本文)はスペースに + を使います。URLパスやクエリ文字列は %20 を使います。Toovaは文脈に合わせて正しいエンコードを選べます。誤った方を選ぶのはフォーム処理で最もよく見られるバグです。
複数行をまとめてエンコードできますか?
はい。複数行の文字列を貼り付けると、改行も含めて各文字を正しくエンコードします。改行は %0A や %0D%0A になります。URLの要件通り、出力は1行に収まります。
入力はどこかへ送信されますか?
いいえ。エンコードとデコードはすべてブラウザ内で行われます。アップロードはなく、最初の読み込み後はオフラインでも動作します。