Кодирование URL — это практика перевода непечатаемых символов или символов со специальным значением в URL-адреса в представление, которое является однозначным и общепринятым для веб-браузеров и серверов. Эти символы включают в себя —
-
Управляющие символы ASCII — непечатаемые символы, обычно используемые для управления выводом. Диапазон символов 00-1F шестнадцатеричный (0-31 десятичный) и 7F (127 десятичный). Полная таблица кодирования приведена ниже.
-
Не-ASCII управляющие символы — это символы за пределами набора символов ASCII из 128 символов. Этот диапазон является частью набора символов ISO-Latin и включает всю «верхнюю половину» набора ISO-Latin 80-FF hex (128-255 десятичных). Полная таблица кодирования приведена ниже.
-
Зарезервированные символы — это специальные символы, такие как знак доллара, амперсанд, плюс, общий, косая черта, двоеточие, точка с запятой, знак равенства, знак вопроса и символ «at». Все они могут иметь разные значения внутри URL, поэтому их необходимо кодировать. Полная таблица кодирования приведена ниже.
-
Небезопасные символы — это пробел, кавычки, меньше символа, больше символа, символ фунта, символ процента, левая фигурная скобка, правая фигурная скобка, труба, обратная косая черта, каретка, тильда, левая квадратная скобка, правая квадратная скобка, могильный акцент , Эти символы дают возможность быть неправильно понятыми в URL-адресах по разным причинам. Эти символы также всегда должны быть закодированы. Полная таблица кодирования приведена ниже.
Управляющие символы ASCII — непечатаемые символы, обычно используемые для управления выводом. Диапазон символов 00-1F шестнадцатеричный (0-31 десятичный) и 7F (127 десятичный). Полная таблица кодирования приведена ниже.
Не-ASCII управляющие символы — это символы за пределами набора символов ASCII из 128 символов. Этот диапазон является частью набора символов ISO-Latin и включает всю «верхнюю половину» набора ISO-Latin 80-FF hex (128-255 десятичных). Полная таблица кодирования приведена ниже.
Зарезервированные символы — это специальные символы, такие как знак доллара, амперсанд, плюс, общий, косая черта, двоеточие, точка с запятой, знак равенства, знак вопроса и символ «at». Все они могут иметь разные значения внутри URL, поэтому их необходимо кодировать. Полная таблица кодирования приведена ниже.
Небезопасные символы — это пробел, кавычки, меньше символа, больше символа, символ фунта, символ процента, левая фигурная скобка, правая фигурная скобка, труба, обратная косая черта, каретка, тильда, левая квадратная скобка, правая квадратная скобка, могильный акцент , Эти символы дают возможность быть неправильно понятыми в 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 | возврат на одну позицию | % 08 |
9 | 09 | табуляция | % 09 |
10 | 0a | перевод строки | % 0a |
11 | 0b | % 0b | |
12 | 0с | % 0с | |
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 | % 1а | |
27 | 1б | % 1b | |
28 | 1c | % 1c | |
29 | 1d | % 1d | |
30 | 1e | % 1е | |
31 | 1f | % 1f | |
127 | 7е | % 7е |
Кодировка управляющих символов не 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а | Š | % 8а |
139 | 8б | < | % 8b |
140 | 8в | О.Н | % 8c |
141 | 8d | % 8d | |
142 | 8е | Ž | % 8e |
143 | 8е | % 8е | |
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 | 9е | Ÿ | % 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 | аа | ª | % аа |
171 | аб | « | % аб |
172 | переменный ток | ¬ | % переменный ток |
173 | объявление | %объявление | |
174 | ае | ® | % ае |
175 | аф | ¯ | % аф |
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 | ба | º | % ба |
187 | бб | » | % бб |
188 | До нашей эры | ¼ | %До нашей эры |
189 | бод | ½ | % шд |
190 | быть | ¾ | %быть |
191 | Б.Ф. | ¿ | % Б.Ф. |
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 | с8 | Э. | % c8 |
201 | с9 | É | % с9 |
202 | Калифорния | Ê | % ча |
203 | центибар | Ë | % центибар |
204 | куб.см | Я | % куб.см |
205 | CD | Я | %CD |
206 | в.п. | Я | % в.п. |
207 | сравни | Я | % ср |
208 | d0 | Ð | % d0 |
209 | d1 | ЦТС | % d1 |
210 | d2 | Ò | % d2 |
211 | d3 | Ó | % d3 |
212 | d4 | Ф | % d4 |
213 | d5 | Õ | % d5 |
214 | d6 | Ö | % d 6 |
215 | d7 | × | % d7 |
216 | d8 | Ø | % d8 |
217 | d9 | Ù | % d9 |
218 | да | Ú | % да |
219 | децибел | Û | % дб |
220 | Округ Колумбия | Ü | %Округ Колумбия |
221 | дд | Ý | % дд |
222 | де | Þ | % от |
223 | Д.Ф. | ß | % Д.Ф. |
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 | еа | ê | % еа |
235 | Е.Б. | ë | % Е.Б. |
236 | ЕС | я | % ес |
237 | издание | я | % ред |
238 | й | я | % й |
239 | эф | я | % эф |
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 | фа | ú | % метрономы |
251 | фб | û | % фб |
252 | Ь | ü | % Ь |
253 | FD | ý | % FD |
254 | Fe | þ | % Fe |
255 | Ф.Ф. | ÿ | % Ф.Ф. |
Кодировка зарезервированных символов
Ниже приведена таблица, которая будет использоваться для кодирования зарезервированных символов.
Десятичный | Шестнадцатеричное значение | голец | Кодирование URL |
---|---|---|---|
36 | 24 | $ | % 24 |
38 | 26 | & | % 26 |
43 | 2b | + | % 2b |
44 | 2с | , | % 2c |
47 | 2f | / | % 2f |
58 | 3a | : | % 3a |
59 | 3b | ; | % 3b |
61 | 3d | знак равно | % 3d |
63 | 3f | ? | % 3f |
64 | 40 | @ | % 40 |
Небезопасное кодирование символов
Ниже приведена таблица, используемая для кодирования небезопасных символов.