URLエンコーダー&デコーダー - クエリ文字列エンコード オンライン
URL、クエリパラメータ、特殊文字を即座にエンコード・デコード。URLコンポーネントの解析とフォーマット変換。
よくある質問
URLエンコードとは?
URLエンコード(パーセントエンコーディングとも呼ばれる)は、URLで安全に送信できる形式に文字を変換します。URLで特別な意味を持つ文字や許可されていない文字(スペース、&、?、=など)は、パーセント記号とその16進数値に置き換えられます。例えば、スペースは%20になり、@は%40になります。
URLエンコードはいつ使用すべき?
URLエンコードは次の場合に使用します:ユーザー入力をURLクエリパラメータとして渡す時、URLパスに特殊文字を含める時、GETリクエストでフォームデータを送信する時、動的な値でAPIリクエストURLを作成する時、日本語や絵文字などの非ASCII文字をURLに含める時。URLが有効でブラウザとサーバーで正しく解析されることを保証します。
encodeURIComponentとencodeURIの違いは?
encodeURIComponentはA-Z、a-z、0-9、- _ . ! ~ * ' ( )を除くほぼすべての文字をエンコードします。クエリパラメータの値をエンコードする時に使用します。encodeURIは : / ? # @などのURL構造文字を保持し、完全なURLを機能的に保ちながらエンコードする時に使用します。値にはencodeURIComponent、完全なURLにはencodeURIを使用してください。
スペースは%20と+のどちらでエンコードすべき?
両方とも有効ですが、異なる文脈で使用されます。%20はURLでのスペースの標準RFC 3986エンコーディングです。+記号はapplication/x-www-form-urlencoded形式(HTMLフォーム送信)で使用されます。現代のWeb APIは通常%20を期待し、フォームデータは伝統的に+を使用します。このツールは両方のオプションをサポートしています。
URLエンコードは安全?
URLエンコードは暗号化ではありません - URLで文字を安全に表現する方法に過ぎません。デコード後もデータは読み取り可能です。このツールはブラウザですべてを処理するため、データがデバイスから外に出ることはありません。機密データには、常にHTTPSと適切な認証を使用してください。
コード例
// Encode query parameter value
const encoded = encodeURIComponent('hello world & more');
console.log(encoded); // "hello%20world%20%26%20more"
// Decode
const decoded = decodeURIComponent(encoded);
console.log(decoded); // "hello world & more"
// Encode full URL (preserves structure)
const url = encodeURI('https://example.com/path?q=hello world');
console.log(url); // "https://example.com/path?q=hello%20world"