HTML - Codifica URL

La codifica URL è la pratica di tradurre caratteri non stampabili o caratteri con un significato speciale all'interno degli URL in una rappresentazione non ambigua e universalmente accettata dai browser web e dai server. Questi personaggi includono:

  • ASCII control characters- Caratteri non stampabili generalmente utilizzati per il controllo dell'output. Intervalli di caratteri 00-1F esadecimale (0-31 decimale) e 7F (127 decimale). Di seguito viene fornita una tabella di codifica completa.

  • Non-ASCII control characters- Questi sono caratteri oltre il set di caratteri ASCII di 128 caratteri. Questo intervallo fa parte del set di caratteri ISO-Latin e include l'intera "metà superiore" del set ISO-Latin 80-FF hex (128-255 decimale). Di seguito viene fornita una tabella di codifica completa.

  • Reserved characters- Questi sono caratteri speciali come il simbolo del dollaro, e commerciale, più, comune, barra, due punti, punto e virgola, segno di uguale, punto interrogativo e simbolo "a". Tutti questi possono avere significati diversi all'interno di un URL, quindi devono essere codificati. Di seguito viene fornita una tabella di codifica completa.

  • Unsafe characters- Sono spazio, virgolette, minore del simbolo, maggiore del simbolo, cancelletto, carattere percentuale, parentesi graffa sinistra, parentesi graffa destra, tubo, barra rovesciata, accento circonflesso, tilde, parentesi quadra sinistra, parentesi quadra destra, accento grave. Questi caratteri presentano la possibilità di essere fraintesi all'interno degli URL per vari motivi. Anche questi caratteri dovrebbero essere sempre codificati. Di seguito viene fornita una tabella di codifica completa.

La notazione di codifica sostituisce il carattere desiderato con tre caratteri: un segno di percentuale e due cifre esadecimali che corrispondono alla posizione del carattere nel set di caratteri ASCII.

Esempio

Uno dei caratteri speciali più comuni è uno spazio bianco. Non puoi digitare direttamente uno spazio in un URL. Una posizione di spazio nel set di caratteri è 20 esadecimali. Quindi puoi usare% 20 al posto di uno spazio quando passi la tua richiesta al server.

http://www.example.com/new%20pricing.htm

Questo URL recupera effettivamente un documento denominato "new pricing.htm" da www.example.com

Codifica caratteri di controllo ASCII

Ciò include la codifica per intervalli di caratteri 00-1F esadecimale (0-31 decimale) e 7F (127 decimale)

Decimale Valore esadecimale Personaggio Codifica 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 tab % 09
10 0a avanzamento riga % 0a
11 0b   % 0b
12 0c   % 0c
13 0d ritorno a capo % 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 dei caratteri di controllo non ASCII

Ciò include la codifica per l'intera "metà superiore" del set ISO-Latin 80-FF hex (128255 decimale).

Decimale Valore esadecimale Personaggio Codifica 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 corrente alternata ¬ %corrente alternata
173 anno Domini ­ %anno Domini
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 avanti Cristo ¼ %avanti Cristo
189 bd ½ % bd
190 essere ¾ %essere
191 bf ¿ % bf
192 c0 UN % c0
193 c1 UN % c1
194 c2 UN % c2
195 c3 UN % c3
196 c4 UN % c4
197 c5 UN % c5
198 c6 Æ % v6
199 c7 Ç % c7
200 c8 È % c8
201 c9 É % c9
202 circa Ê %circa
203 cb Ë % cb
204 cc IO % cc
205 CD IO %CD
206 ce IO % ce
207 cfr IO % 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 un % e0
225 e1 un % e1
226 e2 un % e2
227 e3 un % e3
228 e4 un % e4
229 e5 un % e5
230 e6 æ % e6
231 e7 ç % e7
232 e8 è % e8
233 e9 é % e9
234 ea ê % ea
235 eb ë % eb
236 ec io % ec
237 ed io % ed
238 ee io % ee
239 ef io % 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

Codifica caratteri riservati

Di seguito è riportata la tabella da utilizzare per codificare i caratteri riservati.

Decimale Valore esadecimale Char Codifica 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

Codifica caratteri non sicuri

Di seguito è riportata la tabella da utilizzare per codificare i caratteri non sicuri.

Decimale Valore esadecimale Char Codifica URL
32 20 spazio % 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 5 D ] %5 D
96 60 " % 60