HTML - Codificação de URL
A codificação de URL é a prática de traduzir caracteres não imprimíveis ou caracteres com significado especial dentro de URLs em uma representação inequívoca e universalmente aceita por navegadores e servidores da web. Esses personagens incluem -
ASCII control characters- Caracteres não imprimíveis normalmente usados para controle de saída. Os caracteres variam de 00-1F hex (0-31 decimal) e 7F (127 decimal). Uma tabela de codificação completa é fornecida abaixo.
Non-ASCII control characters- São caracteres além do conjunto de caracteres ASCII de 128 caracteres. Este intervalo faz parte do conjunto de caracteres ISO-Latin e inclui toda a "metade superior" do conjunto ISO-Latin 80-FF hexadecimal (128-255 decimal). Uma tabela de codificação completa é fornecida abaixo.
Reserved characters- São caracteres especiais, como cifrão, "e" comercial, mais, comum, barra, dois-pontos, ponto e vírgula, sinal de igual, ponto de interrogação e símbolo "arroba". Todos eles podem ter significados diferentes dentro de um URL, portanto, precisam ser codificados. Uma tabela de codificação completa é fornecida abaixo.
Unsafe characters- São espaço, aspas, símbolo de menor que, maior que símbolo, caractere de libra, caractere de porcentagem, colchete esquerdo, colchete direito, cano, barra invertida, circunflexo, til, colchete esquerdo, colchete direito, acento grave. Esses caracteres apresentam a possibilidade de serem mal interpretados em URLs por vários motivos. Esses caracteres também devem ser sempre codificados. Uma tabela de codificação completa é fornecida abaixo.
A notação de codificação substitui o caractere desejado por três caracteres: um sinal de porcentagem e dois dígitos hexadecimais que correspondem à posição do caractere no conjunto de caracteres ASCII.
Exemplo
Um dos caracteres especiais mais comuns é um espaço em branco. Você não pode digitar um espaço em um URL diretamente. Uma posição de espaço no conjunto de caracteres é 20 hexadecimais. Portanto, você pode usar% 20 no lugar de um espaço ao passar sua solicitação para o servidor.
http://www.example.com/new%20pricing.htm
Na verdade, este URL recupera um documento denominado "new pricing.htm" de www.example.com
Codificação de caracteres de controle ASCII
Isso inclui a codificação para intervalos de caracteres 00-1F hex (0-31 decimal) e 7F (127 decimal)
Decimal | Valor hexadecimal | Personagem | Codificação de 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 | aba | % 09 |
10 | 0a | alimentação de linha | % 0a |
11 | 0b | % 0b | |
12 | 0c | % 0c | |
13 | 0d | retorno de carruagem | % 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 |
Codificação de caracteres de controle não ASCII
Isso inclui a codificação de toda a "metade superior" do conjunto ISO-Latin 80-FF hexadecimal (128255 decimal.)
Decimal | Valor hexadecimal | Personagem | Codificação de 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 | ac | ¬ | % ac |
173 | de Anúncios | | %de Anúncios |
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 | aC | ¼ | % bc |
189 | bd | ½ | % bd |
190 | estar | ¾ | %estar |
191 | bf | ¿ | % bf |
192 | c0 | UMA | % c0 |
193 | c1 | UMA | % c1 |
194 | c2 | UMA | % c2 |
195 | c3 | UMA | % c3 |
196 | c4 | UMA | % c4 |
197 | c5 | UMA | % c5 |
198 | c6 | Æ | % v6 |
199 | c7 | Ç | % c7 |
200 | c8 | È | % c8 |
201 | c9 | ... | % c9 |
202 | ca | Ê | % ca |
203 | cb | Ë | % cb |
204 | cc | EU | % cc |
205 | CD | EU | %CD |
206 | ce | EU | % ce |
207 | cf | EU | % 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 | VOCÊ | % d9 |
218 | da | VOCÊ | % da |
219 | db | VOCÊ | % db |
220 | dc | VOCÊ | % dc |
221 | dd | Ý | % dd |
222 | de | º | % de |
223 | df | ß | % df |
224 | e0 | uma | % e0 |
225 | e1 | uma | % e1 |
226 | e2 | uma | % e2 |
227 | e3 | uma | % e3 |
228 | e4 | uma | % e4 |
229 | e5 | uma | % e5 |
230 | e6 | æ | % e6 |
231 | e7 | ç | % e7 |
232 | e8 | è | % e8 |
233 | e9 | é | % e9 |
234 | ea | ê | % ea |
235 | eb | ë | % eb |
236 | ec | Eu | % ec |
237 | ed | Eu | % ed |
238 | ee | Eu | % ee |
239 | ef | Eu | % 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 | você | % f9 |
250 | fa | você | % fa |
251 | fb | você | % fb |
252 | fc | você | % fc |
253 | fd | ý | % fd |
254 | fe | º | % fe |
255 | ff | ÿ | % ff |
Codificação de caracteres reservados
A seguir está a tabela a ser usada para codificar caracteres reservados.
Decimal | Valor hexadecimal | Caracteres | Codificação de URL |
---|---|---|---|
36 | 24 | $ | % 24 |
38 | 26 | E | % 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 |
Codificação de caracteres inseguros
A seguir está a tabela a ser usada para codificar caracteres não seguros.
Decimal | Valor hexadecimal | Caracteres | Codificação de URL |
---|---|---|---|
32 | 20 | espaço | % 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 |