Percent-encoding (パーセントエンコーディング)
パーセントエンコーディング(Percent-encoding)は、URL のコンテキストで特定の意味を持つ 8 ビット文字をエンコードするメカニズムです。URL エンコードとも呼ばれます。エンコードは置換で構成されます。'%' の後に、置換文字の ASCII 値の 16 進表現が続きます。
エンコードが必要な特殊文字は、':', '/', '?', '#', '[', ']', '@', '!', '$', '&', "'", '(', ')', '*', '+', ',', ';', '='、および '%' 自体です。他の文字もエンコードできますが、エンコードする必要はありません。
| 文字 | エンコーディング |
|---|---|
':' |
%3A |
'/' |
%2F |
'?' |
%3F |
'#' |
%23 |
'[' |
%5B |
']' |
%5D |
'@' |
%40 |
'!' |
%21 |
'$' |
%24 |
'&' |
%26 |
"'" |
%27 |
'(' |
%28 |
')' |
%29 |
'*' |
%2A |
'+' |
%2B |
',' |
%2C |
';' |
%3B |
'=' |
%3D |
'%' |
%25 |
' ' |
%20 または + |
文字 ' ' はコンテキストに応じて、'+'(application/x-www-form-urlencoded メッセージで使用するパーセントエンコーディングバージョンなど)または URL のように '%20' に変換されます。
関連情報
- ウィキペディアでのパーセントエンコーディングの定義。
- RFC 3986 のセクション 2.1 に、このエンコーディングが定義されています。
encodeURI()およびencodeURIComponent()— パーセントエンコード URL のための関数