네트워크
URL 인코더/디코더
URL을 인코딩하고 디코딩합니다.
유효하지 않은 URL
Tips
- 日本語「あ」は UTF-8 でエンコードされると
%E3%81%82になります。 - スペースは URL パスでは
%20、クエリパラメーターでは+に変換されることがあります(RFC 3986 vs HTML フォーム仕様の違い)。 ?・&・=などの予約文字をパラメーター値に含める場合はエンコードが必要です。- REST API のクエリパラメーターに日本語を含める際やリダイレクト URL を安全に渡す際に活用できます。
余談ですが ― URLの誕生 ― Tim Berners-LeeとWorldWideWebの夜明け
URLは1991年にTim Berners-Lee(World Wide Web の発明者)が設計しました。当初はASCII文字のみを想定していたため、日本語などのマルチバイト文字や特殊文字はパーセントエンコーディングで表現する必要があります。
インターネット最初のWebページのURL「http://info.cern.ch/hypertext/WWW/TheProject.html」は 今もアクセス可能 です。また「絵文字ドメイン」(例: 🍕.ws)は技術的に存在可能で、内部的にはPunycode(xn-- から始まる形式)に変換されています。世界最長のURLは理論的には2,000文字以上も可能ですが、実用上はブラウザやサーバーの制限(2,048文字程度)があります。
RFC 3986でURLの仕様が定義されていますが、「%20(スペース)」と「+(スペース)」の使い分けは今もよく混乱の元になります。%20はURI標準、+はHTMLフォームのapplication/x-www-form-urlencoded形式で使われるものであり、用途によって区別が必要です。