URLエンコード・デコード

URLをエンコード・デコードし、クエリパラメータを一覧で表示します。

英数字と - _ . ! ~ * ' ( ) 以外をすべてエンコードします。クエリの値1つやパスの1区切りに使います。

URLのエンコード・デコード方法

  1. エンコードかデコードを選びます。
  2. 値1つならパラメータの値、アドレス全体ならURL全体を選びます。
  3. テキストを貼り付けて結果をコピーします。URL全体は要素ごとにも分解して表示します。

予約文字と危険な文字

? & = # / はURLで特別な意味を持ちます。値にこれらが含まれる場合はエンコードしないと、&を含む検索語のようにURLが間違った位置で切れてしまいます。

コードでのエンコード

JavaScriptは値に encodeURIComponent、クエリ作成には URLSearchParams を使います。Pythonは urllib.parse.quote と urlencode です。値は1回だけエンコードしましょう。二重にすると % が %25 になります。

トラッキングリンクを読む

マーケティングのリンクには utm_source や utm_campaign などのパラメータが付きます。URLの構成表示ではすべてのパラメータをデコードして一覧にするので、長いリダイレクトURLも確認しやすくなります。

よくある質問

URLエンコードとは?

空白、日本語、&などURLにそのまま使えない文字を、%の後にUTF-8のバイトを16進数で書く方法です。空白は%20、「あ」は%E3%81%82になります。

+が空白になるのはなぜ?

フォーム送信やクエリ文字列では、+は伝統的に空白を意味するため、デコード時に空白に変えます。

encodeURIとencodeURIComponentの違いは?

encodeURIComponentは / ? & = もエンコードするので値向き、encodeURIはそれらを残すのでURL全体向きです。