Una URL (acrónimo de Uniform Resource Locator) es la dirección de un recurso en la red mundial. Las URL tienen una estructura bien definida que fue formulada en RFC 1738 por Tim Berners-Lee, inventor de la World Wide Web.

Una URL sigue la siguiente sintaxis:

protocolo[//[usuario:[email protected]]:host[:porta]/ruta[?parametro][#fragmento]

El uso más conocido de la URL es para conectarse a sitios web, como podemos ver en el siguiente ejemplo.

https://google.com

Se realizaron varias mejoras al RFC inicial. El RFC actual que define la sintaxis de URI es RFC 3986. Esta publicación contiene información del documento RFC más reciente.

Diferencia entre URL y URI

Probablemente escuche en algunos lugares hablar URL y en otros URI.

  • Un URI es un identificador de un recurso específico. Como página, libro o documento
  • La URL es un tipo especial de identificador que también le indica cómo acceder a ella, como HTTP, FTP, etc. Un ejemplo sería el sitio https://marquesfernandes.com

Si el protocolo (HTTPS, FTP, etc.) está presente o implícito para un dominio, debe llamarlo URL, aunque también es un URI. Todas las URL son URI, pero no todas las URI son URL.

Codificación de URL (codificación porcentual)

Una URL está formada por un conjunto limitado de caracteres que pertenecen al conjunto de caracteres US-ASCII .Estos caracteres incluyen dígitos (0-9), letras (AZ, az), y algunos caracteres especiales, ("-"".""_""~"), ya que son US-ASCII, los caracteres permitidos no incluya acentos como los que se encuentran en el idioma portugués.

Hay algunos caracteres especiales que tienen un uso especial en las URL. Algunos ejemplos de caracteres reservados son  ?/#:etc. Los datos transmitidos como parte de la URL, ya sea en un segmento de cadena de consulta o en una ruta, no deben contener estos caracteres directamente.

Además, los caracteres peligrosos como espaço\<>{}etc, y cualquier carácter fuera del conjunto de caracteres ASCII, no se permiten directamente en las URL.

Entonces, ¿qué hacer cuando necesitamos enviar datos en la URL que contiene estos caracteres no permitidos?Usamos la magia de la codificación.

La codificación de URL convierte los caracteres reservados e inseguros a un formato comprendido por todos los navegadores y servidores de Internet. Primero convertimos el carácter a uno o más bytes. Luego, cada byte está representado por dos dígitos hexadecimales con un prefijo % (por ejemplo,%20). El signo de porcentaje se utiliza como carácter de seguridad.

Ejemplo de codificación de URL

Espacio: uno de los caracteres codificados en URL más frecuentes que probablemente encontrará es un espacio vacío. El valor ASCII delespacio vacío caracteres vacío en decimal es32, que cuando se convierte a hexadecimal se convierte en 20. Ahora, agregamos el prefijo de porcentaje (%), que nos da el valor codificado de la URL: %20.

Tabla de referencia de codificación de porcentaje de caracteres ASCII

La siguiente tabla es una referencia a los caracteres ASCII para su forma codificada de URL correspondiente.

DecimalPersonajeCodificación de URL (UTF-8)
0NUL (carácter nulo)% 00
1SOH (inicio de encabezado)% 01
dosSTX (comienzo del texto)% 02
3ETX (final del texto)% 03
4EOT (fin de transmisión)% 04
5ENQ (encuesta)% 05
6ACK (reconocer)% 06
7BEL (campana)% 07
8BS (rebobinar)% 08
9HT (guía horizontal)% 09
10LF (avance de línea)% 0A
11VT (guía vertical)% 0B
12FF (alimentación de formulario)% 0C
13CR (retorno de carro)% 0D
14SO (cambiar)% 0E
15SI (cambio)% 0F
dieciséisDLE (escape de enlace de datos)% 10
17DC1 (control de dispositivo 1)% 11
18DC2 (control de dispositivo 2)% 12
19DC3 (control del dispositivo 3)% 13
20DC4 (control del dispositivo 4)% 14
21NAK (reconocimiento negativo)% 15
22SYN (sincronización)% dieciséis
23ETB (final del bloque de transmisión)% 17
24CAN (cancelar)% 18
25EM (fin de los medios)% 19
26SUB (sustituto)% 1A
27ESC (escapar)% 1B
28FS (separador de archivos)% 1C
29GS (separador de grupos)% 1D
30RS (separador de registros)% 1 Y
31US (Separador de unidades)% 1F
32espacio% 20
33!% 21
34«% 22
35#% 23
36PS% 24
37%% 25
38Y% 26
39% 27
40(% 28
41)% 29
42*% 2A
43+% 2B
44,% 2C
45% 2D
46.% 2E
47/% 2F
480% 30
491% 31
502% 32
513% 33
524% 34
535% 35
546% 36
557% 37
568% 38
579% 39
58:% 3A
59;% 3B
60<% 3C
61=% 3D
62>% 3E
63?% 3F
64@% 40
65A% 41
66B% 42
67C% 43
68D% 44
69E% 45
70F% 46
71G% 47
72H% 48
73I% 49
74J% 4A
75K% 4B
76L% 4C
77M% 4D
78N% 4E
79O% 4F
80P% 50
81Q% 51
82R% 52
83S% 53
84T% 54
85U% 55
86V% 56
87W% 57
88X% 58
89Y% 59
90Z% 5A
91[% 5B
92% 5C
93]% 5D
94^% 5E
95_% 5F
96% 60
97a% 61
98b% 62
99c% 63
100d% 64
101y% 65
102f% 66
103g% 67
104h% 68
105I% 69
106j% 6A
107k% 6B
108I% 6C
109m% 6D
110n% 6E
111o% 6F
112p% 70
113q% 71
114r% 72
115s% 73
116t% 74
117u% 75
118v% 76
119w% 77
120x% 78
121y% 79
122z% 7A
123{% 7B
124|% 7C
125}% 7D
126~% 7E
127DEL (borrar)% 7F

0 0 votos
Nota do Artigo
Subscribe
Notify of
guest
0 Comentários
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x