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
000 % 00
101 % 01
202 % 02
303 % 03
404 % 04
505 % 05
606 % 06
707 % 07
808Backspace% 08
909вкладка% 09
100aперевод строки% 0a
110b % 0b
120c % 0c
130dвозврат каретки% 0d
140e % 0e
150f % 0f
1610 % 10
1711 % 11
1812 % 12
1913 % 13
2014 % 14
21 год15 % 15
2216 % 16
2317 % 17
2418 % 18
2519 % 19
26 % 1a
271b % 1b
281c % 1c
29 % 1d
301e % 1e
31 год1f % 1f
1277f % 7f

Кодировка управляющих символов, отличная от ASCII

Это включает в себя кодирование всей «верхней половины» набора ISO-Latin 80-FF hex (128-255 десятичных).

ДесятичныйШестнадцатеричное значениесимволКодирование URL
12880% 80
12981 год??% 81
13082% 82
13183ƒ% 83
13284% 84
13385% 85
13486% 86
13587% 87
13688ˆ% 88
13789% 89
138Š% 8a
1398b% 8b
1408cŒ% 8c
1418d??% 8d
1428eŽ% 8e
1438f??% 8f
14490??% 90
14591'% 91
14692'% 92
14793«% 93
14894% 94
14995% 95
15096-% 96
15197-% 97
15298˜% 98
15399% 99
154š% 9a
1559b% 9b
1569cœ% 9c
1579d??% 9d
1589ež% 9e
1599fŸ% 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
171ab«% ab
172ac¬% ac
173объявление­%объявление
174ае®% ae
175аф¯% af
176b0°% b0
177b1±% b1
178Би 2²%Би 2
179b3³% b3
180b4´% b4
181b5µ% b5
182b6% b6
183b7·% b7
184b8¸% b8
185b9¹% b9
186баº% ba
187bb»% bb
188до н.э¼%до н.э
189bd½% bd
190быть¾%быть
191парень¿% bf
192c0А% c0
193c1Á% c1
194c2Â% c2
195c3Ã% c3
196c4Ä% c4
197c5Å% c5
198c6Æ% v6
199c7Ç% c7
200c8È% c8
201c9É% c9
202окÊ% ca
203cbË% cb
204ccЯ% cc
205CDЯ%CD
206ceЯ% ce
207срЯ% cf
208d0Ð% d0
209d1Ñ% d1
210d2Ò% d2
211d3Ó% d3
212d4Ô% d4
213d5Õ% d5
214d6Ö% d6
215d7×% d7
216d8Ø% d8
217d9Ù% d9
218даÚ% da
219dbÛ% db
220Округ КолумбияÜ%Округ Колумбия
221ддÝ% dd
222деÞ% de
223dfß% df
224e0à% e0
225e1á% e1
226e2â% e2
227e3ã% e3
228e4ä% e4
229e5å% e5
230e6æ% e6
231e7ç% e7
232e8è% e8
233e9é% e9
234еаê% ea
235ebë% eb
236ecя% ec
237редя% ed
238еея% ее
239efя% ef
240f0ð% f0
241f1ñ% f1
242f2ò% f2
243f3ó% f3
244f4ô% f4
245f5х% f5
246f6ö% f6
247f7÷% f7
248f8ø% f8
249f9ù% f9
250фаú% fa
251fbû% fb
252fcü% fc
253fdý% fd
254feþ% fe
255ffÿ% ff

Кодировка зарезервированных символов

Ниже приводится таблица, которая будет использоваться для кодирования зарезервированных символов.

ДесятичныйШестнадцатеричное значениеCharКодирование URL
3624$% 24
3826&% 26
43 год2b+% 2b
442c,% 2c
472f/% 2f
58:% 3a
593b;% 3b
613Dзнак равно% 3d
633f?% 3f
6440@% 40

Небезопасная кодировка символов

Ниже приводится таблица, которая будет использоваться для кодирования небезопасных символов.

ДесятичныйШестнадцатеричное значениеCharКодирование URL
3220пространство% 20
3422"% 22
603c<% 3c
623e>% 3e
35 год23#% 23
3725%% 25
1237b{% 7b
1257d}% 7d
1247c|% 7c
925c\% 5c
945e^% 5e
1267e~% 7e
915b[% 5b
935d]% 5d
9660`% 60