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 |