HTML5 - Кодировка URL
Кодирование URL-адресов - это практика перевода непечатаемых символов или символов со специальным значением в URL-адресах в однозначное и универсальное представление веб-браузеров и серверов. Эти персонажи включают в себя -
ASCII control characters- Непечатаемые символы обычно используются для управления выводом. Диапазоны символов 00-1F шестнадцатеричный (0-31 десятичный) и 7F (127 десятичный). Полная таблица кодирования приведена ниже.
Non-ASCII control characters- Это символы, превышающие набор символов ASCII, состоящий из 128 символов. Этот диапазон является частью набора символов ISO-Latin и включает всю «верхнюю половину» шестнадцатеричного набора ISO-Latin 80-FF (128-255 десятичных знаков). Полная таблица кодирования приведена ниже.
Reserved characters- Это специальные символы, такие как знак доллара, амперсанд, плюс, обычный, косая черта, двоеточие, точка с запятой, знак равенства, вопросительный знак и символ «at». Все они могут иметь различное значение внутри URL, поэтому их необходимо закодировать. Полная таблица кодирования приведена ниже.
Unsafe characters- Это пробел, кавычки, меньше символа, больше символа, знак фунта, знак процента, левая фигурная скобка, правая фигурная скобка, труба, обратная косая черта, каретка, тильда, левая квадратная скобка, правая квадратная скобка, серьезный ударение. Эти символы могут быть неправильно поняты в URL-адресах по разным причинам. Эти символы также всегда следует кодировать. Полная таблица кодирования приведена ниже.
Обозначение кодировки заменяет желаемый символ тремя символами: знаком процента и двумя шестнадцатеричными цифрами, которые соответствуют положению символа в наборе символов ASCII.
пример
Один из самых распространенных специальных символов - пробел. Вы не можете напрямую вводить пробел в URL. Позиция пробела в наборе символов - 20 шестнадцатеричных чисел. Таким образом, вы можете использовать% 20 вместо пробела при передаче запроса на сервер.
http://www.example.com/new%20pricing.html
Этот URL фактически извлекает документ с именем new pricing.html с сайта www.example.com.
Кодировка управляющих символов ASCII
Сюда входит кодирование для диапазонов символов 00-1F шестнадцатеричный (0-31 десятичный) и 7F (127 десятичный)
Десятичный | Шестнадцатеричное значение | символ | Кодирование URL |
---|---|---|---|
0 | 00 | % 00 | |
1 | 01 | % 01 | |
2 | 02 | % 02 | |
3 | 03 | % 03 | |
4 | 04 | % 04 | |
5 | 05 | % 05 | |
6 | 06 | % 06 | |
7 | 07 | % 07 | |
8 | 08 | Backspace | % 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 | 1а | % 1a | |
27 | 1b | % 1b | |
28 | 1c | % 1c | |
29 | 1д | % 1d | |
30 | 1e | % 1e | |
31 год | 1f | % 1f | |
127 | 7f | % 7f |
Кодировка управляющих символов, отличная от ASCII
Это включает в себя кодирование всей «верхней половины» набора ISO-Latin 80-FF hex (128-255 десятичных).
Десятичный | Шестнадцатеричное значение | символ | Кодирование 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 | 8а | Š | % 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 | 9а | š | % 9a |
155 | 9b | › | % 9b |
156 | 9c | œ | % 9c |
157 | 9d | ?? | % 9d |
158 | 9e | ž | % 9e |
159 | 9f | Ÿ | % 9f |
160 | а0 | % a0 | |
161 | а1 | ¡ | % a1 |
162 | а2 | ¢ | % a2 |
163 | а3 | £ | % a3 |
164 | а4 | ¤ | % a4 |
165 | а5 | ¥ | % a5 |
166 | а6 | ¦ | % a6 |
167 | а7 | § | % a7 |
168 | а8 | ¨ | % a8 |
169 | а9 | © | % a9 |
170 | аа | ª | % aa |
171 | ab | « | % ab |
172 | ac | ¬ | % ac |
173 | объявление | | %объявление |
174 | ае | ® | % ae |
175 | аф | ¯ | % af |
176 | b0 | ° | % b0 |
177 | b1 | ± | % b1 |
178 | Би 2 | ² | %Би 2 |
179 | b3 | ³ | % b3 |
180 | b4 | ´ | % b4 |
181 | b5 | µ | % b5 |
182 | b6 | ¶ | % b6 |
183 | b7 | · | % b7 |
184 | b8 | ¸ | % b8 |
185 | b9 | ¹ | % b9 |
186 | ба | º | % ba |
187 | bb | » | % bb |
188 | до н.э | ¼ | %до н.э |
189 | bd | ½ | % bd |
190 | быть | ¾ | %быть |
191 | парень | ¿ | % 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 |
203 | cb | Ë | % cb |
204 | cc | Я | % cc |
205 | CD | Я | %CD |
206 | ce | Я | % ce |
207 | ср | Я | % 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 |
219 | db | Û | % db |
220 | Округ Колумбия | Ü | %Округ Колумбия |
221 | дд | Ý | % dd |
222 | де | Þ | % 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 |
235 | eb | ë | % eb |
236 | ec | я | % ec |
237 | ред | я | % ed |
238 | ее | я | % ее |
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 |
251 | fb | û | % fb |
252 | fc | ü | % fc |
253 | fd | ý | % fd |
254 | fe | þ | % fe |
255 | ff | ÿ | % ff |
Кодировка зарезервированных символов
Ниже приводится таблица, которая будет использоваться для кодирования зарезервированных символов.
Десятичный | Шестнадцатеричное значение | Char | Кодирование URL |
---|---|---|---|
36 | 24 | $ | % 24 |
38 | 26 | & | % 26 |
43 год | 2b | + | % 2b |
44 | 2c | , | % 2c |
47 | 2f | / | % 2f |
58 | 3а | : | % 3a |
59 | 3b | ; | % 3b |
61 | 3D | знак равно | % 3d |
63 | 3f | ? | % 3f |
64 | 40 | @ | % 40 |
Небезопасная кодировка символов
Ниже приводится таблица, которая будет использоваться для кодирования небезопасных символов.
Десятичный | Шестнадцатеричное значение | Char | Кодирование 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 |