HTML5-URLエンコード
URLエンコードは、印刷できない文字またはURL内で特別な意味を持つ文字を、明確でWebブラウザやサーバーによって広く受け入れられている表現に変換する方法です。これらの文字には次のものが含まれます-
ASCII control characters−通常、出力制御に使用される印刷不可能な文字。文字範囲は、16進数の00〜1F(10進数の0〜31)および7F(10進数の127)です。完全なエンコーディングテーブルを以下に示します。
Non-ASCII control characters−これらは、128文字のASCII文字セットを超える文字です。この範囲はISO-Latin文字セットの一部であり、ISO-Latinセット80-FF 16進数(10進数で128-255)の「上半分」全体を含みます。完全なエンコーディングテーブルを以下に示します。
Reserved characters−これらは、ドル記号、アンパサンド、プラス、共通、スラッシュ、コロン、セミコロン、等号、疑問符、および「アット」記号などの特殊文字です。これらはすべてURL内で異なる意味を持つ可能性があるため、エンコードする必要があります。完全なエンコーディングテーブルを以下に示します。
Unsafe characters−これらは、スペース、引用符、記号未満、記号より大きい、ポンド文字、パーセント文字、左中括弧、右中括弧、パイプ、円記号、キャレット、チルダ、左角括弧、右角括弧、アクサングラーブです。これらの文字は、さまざまな理由でURL内で誤解される可能性があります。これらの文字も常にエンコードする必要があります。完全なエンコーディングテーブルを以下に示します。
エンコーディング表記は、目的の文字を3文字に置き換えます。パーセント記号とASCII文字セット内の文字の位置に対応する2桁の16進数です。
例
最も一般的な特殊文字の1つはスペースです。URLにスペースを直接入力することはできません。文字セット内のスペース位置は16進数の20です。したがって、サーバーにリクエストを渡すときに、スペースの代わりに%20を使用できます。
http://www.example.com/new%20pricing.html
このURLは、実際にはwww.example.comからnewpricing.htmlという名前のドキュメントを取得します。
ASCII制御文字エンコーディング
これには、文字範囲00〜1F hex(0〜31 10進数)および7F(127 10進数)のエンコードが含まれます。
| 10進数 | 16進値 | キャラクター | URLエンコード |
|---|---|---|---|
| 0 | 00 | %00 | |
| 1 | 01 | %01 | |
| 2 | 02 | %02 | |
| 3 | 03 | %03 | |
| 4 | 0404 | %04 | |
| 5 | 05 | %05 | |
| 6 | 06 | %06 | |
| 7 | 07 | %07 | |
| 8 | 08 | バックスペース | %08 |
| 9 | 09 | タブ | %09 |
| 10 | 0a | 改行 | %0a |
| 11 | 0b | %0b | |
| 12 | 0c | %0c | |
| 13 | 0d | キャリッジリターン | %0d |
| 14 | 0e | %0e | |
| 15 | 0f | %0f | |
| 16 | 10 | %10 | |
| 17 | 11 | %11 | |
| 18 | 12 | %12 | |
| 19 | 13 | %13 | |
| 20 | 14 | %14 | |
| 21 | 15 | %15 | |
| 22 | 16 | %16 | |
| 23 | 17 | %17 | |
| 24 | 18 | %18 | |
| 25 | 19 | %19 | |
| 26 | 1a | %1a | |
| 27 | 1b | %1b | |
| 28 | 1c | %1c | |
| 29 | 1d | %1d | |
| 30 | 1e | %1e | |
| 31 | 1f | %1f | |
| 127 | 7f | %7f |
非ASCII制御文字エンコーディング
これには、ISO-Latinセット80-FF hex(10進数で128-255)の「上半分」全体のエンコードが含まれます。
| 10進数 | 16進値 | キャラクター | URLエンコード |
|---|---|---|---|
| 128 | 80 | ?? | %80 |
| 129 | 81 | ?? | %81 |
| 130 | 82 | ?? | %82 |
| 131 | 83 | ?? | %83 |
| 132 | 84 | ?? | %84 |
| 133 | 85 | ?? | %85 |
| 134 | 86 | ?? | %86 |
| 135 | 87 | ?? | %87 |
| 136 | 88 | ?? | %88 |
| 137 | 89 | ?? | %89 |
| 138 | 8a | ?? | %8a |
| 139 | 8b | ?? | %8b |
| 140 | 8c | ?? | %8c |
| 141 | 8d | ?? | %8d |
| 142 | 8e | ?? | %8e |
| 143 | 8f | ?? | %8f |
| 144 | 90 | ?? | %90 |
| 145 | 91 | ?? | %91 |
| 146 | 92 | ?? | %92 |
| 147 | 93 | ?? | %93 |
| 148 | 94 | ?? | %94 |
| 149 | 95 | ?? | %95 |
| 150 | 96 | ?? | %96 |
| 151 | 97 | ?? | %97 |
| 152 | 98 | ?? | %98 |
| 153 | 99 | ?? | %99 |
| 154 | 9a | ?? | %9a |
| 155 | 9b | ?? | %9b |
| 156 | 9c | ?? | %9c |
| 157 | 9d | ?? | %9d |
| 158 | 9e | ?? | %9e |
| 159 | 9f | ?? | %9f |
| 160 | a0 | %a0 | |
| 161 | a1 | ¡ | %a1 |
| 162 | a2 | ¢ | %a2 |
| 163 | a3 | ££ | %a3 |
| 164 | a4 | ¤ | %a4 |
| 165 | a5 | ¥ | %a5 |
| 166 | a6 | ¦ | %a6 |
| 167 | a7 | § | %a7 |
| 168 | a8 | ¨ | %a8 |
| 169 | a9 | © | %a9 |
| 170 | aa | ª | %aa |
| 171 | ab | « | %ab |
| 172 | 交流 | ¬ | %交流 |
| 173 | 広告 | | %広告 |
| 174 | ae | ® | %ae |
| 175 | af | ¯ | %af |
| 176 | b0 | °° | %b0 |
| 177 | b1 | ±± | %b1 |
| 178 | b2 | ² | %b2 |
| 179 | b3 | ³ | %b3 |
| 180 | b4 | ´ | %b4 |
| 181 | b5 | µ | %b5 |
| 182 | b6 | ¶ | %b6 |
| 183 | b7 | ・ | %b7 |
| 184 | b8 | ¸ | %b8 |
| 185 | b9 | ¹ | %b9 |
| 186 | ba | º | %ba |
| 187 | bb | »» | %bb |
| 188 | 紀元前 | ¼ | %紀元前 |
| 189 | bd | ½ | %bd |
| 190 | あります | ¾ | %be |
| 191 | bf | ¿ | %bf |
| 192 | c0 | À | %c0 |
| 193 | c1 | Á | %c1 |
| 194 | c2 | ÂÂ | %c2 |
| 195 | c3 | Ã | %c3 |
| 196 | c4 | Ä | %c4 |
| 197 | c5 | Å | %c5 |
| 198 | c6 | Æ | %v6 |
| 199 | c7 | Ç | %c7 |
| 200 | c8 | È | %c8 |
| 201 | c9 | É | %c9 |
| 202 | ca | ÊÊ | %ca |
| 203 | cb | Ë | %cb |
| 204 | cc | 私 | %cc |
| 205 | cd | 私 | %cd |
| 206 | ce | 私 | %ce |
| 207 | cf | 私 | %cf |
| 208 | d0 | Ð | %d0 |
| 209 | d1 | Ñ | %d1 |
| 210 | d2 | Ò | %d2 |
| 211 | d3 | Ó | %d3 |
| 212 | d4 | Ô | %d4 |
| 213 | d5 | Õ | %d5 |
| 214 | d6 | Ö | %d6 |
| 215 | d7 | ×× | %d7 |
| 216 | d8 | Ø | %d8 |
| 217 | d9 | Ù | %d9 |
| 218 | da | Ú | %da |
| 219 | db | Û | %db |
| 220 | DC | Ü | %dc |
| 221 | dd | Ý | %dd |
| 222 | de | Þ | %de |
| 223 | df | ß | %df |
| 224 | e0 | à | %e0 |
| 225 | e1 | á | %e1 |
| 226 | e2 | â | %e2 |
| 227 | e3 | ã | %e3 |
| 228 | e4 | ä | %e4 |
| 229 | e5 | å | %e5 |
| 230 | e6 | æ | %e6 |
| 231 | e7 | ç | %e7 |
| 232 | e8 | è | %e8 |
| 233 | e9 | é | %e9 |
| 234 | ea | ê | %ea |
| 235 | eb | ë | %eb |
| 236 | ec | 私 | %ec |
| 237 | ed | 私 | %ed |
| 238 | ee | 私 | %ee |
| 239 | ef | 私 | %ef |
| 240 | f0 | ð | %f0 |
| 241 | f1 | ñ | %f1 |
| 242 | f2 | ò | %f2 |
| 243 | f3 | ó | %f3 |
| 244 | f4 | ô | %f4 |
| 245 | f5 | õ | %f5 |
| 246 | f6 | ö | %f6 |
| 247 | f7 | ÷ | %f7 |
| 248 | f8 | ø | %f8 |
| 249 | f9 | ù | %f9 |
| 250 | fa | ú | %fa |
| 251 | fb | û | %fb |
| 252 | fc | ü | %fc |
| 253 | fd | ý | %fd |
| 254 | fe | þ | %fe |
| 255 | ff | ÿ | %ff |
予約文字エンコード
以下は、予約文字のエンコードに使用される表です。
| 10進数 | 16進値 | チャー | URLエンコード |
|---|---|---|---|
| 36 | 24 | $ | %24 |
| 38 | 26 | & | %26 |
| 43 | 2b | + | %2b |
| 44 | 2c | 、 | %2c |
| 47 | 2f | / | %2f |
| 58 | 3a | : | %3a |
| 59 | 3b | ; | %3b |
| 61 | 3d | = | %3d |
| 63 | 3f | ? | %3f |
| 64 | 40 | @ | %40 |
安全でない文字エンコード
以下は、安全でない文字をエンコードするために使用される表です。
| 10進数 | 16進値 | チャー | URLエンコード |
|---|---|---|---|
| 32 | 20 | スペース | %20 |
| 34 | 22 | 「」 | %22 |
| 60 | 3c | < | %3c |
| 62 | 3e | >> | %3e |
| 35 | 23 | # | %23 |
| 37 | 25 | % | %25 |
| 123 | 7b | {{ | %7b |
| 125 | 7d | } | %7d |
| 124 | 7c | | | %7c |
| 92 | 5c | \ | %5c |
| 94 | 5e | ^ | %5e |
| 126 | 7e | 〜 | %7e |
| 91 | 5b | [ | %5b |
| 93 | 5d | ] | %5d |
| 96 | 60 | ` | %60 |