Analizador de URL

Cuando un webhook falla o un enlace de seguimiento arrastra los parámetros equivocados, lo más rápido es descomponer la URL y leer cada parte. Pega cualquier URL y este analizador la divide en sus componentes: esquema, usuario y contraseña, host, puerto, ruta, cadena de consulta y fragmento, y despliega la consulta en una tabla con cada par de clave y valor. Se ejecuta en nuestro servidor con el analizador de URL estándar de PHP, así que verás exactamente cómo leería el mismo enlace un backend en PHP.

Cómo analizar una URL

  1. 1

    Pega la URL

    Introduce cualquier URL, absoluta o relativa. No hay que pulsar nada: se analiza mientras escribes.

  2. 2

    Lee los componentes

    La tabla se rellena con el esquema, host, puerto, usuario, contraseña, ruta, consulta y fragmento que encuentra. Las partes vacías muestran un guion.

  3. 3

    Despliega la consulta

    Cada par `key=value` aparece en su propia fila, con la codificación porcentual y `+` decodificados a caracteres reales.

  4. 4

    Copia los parámetros

    El botón de copiar toma todos los parámetros de la consulta a la vez como líneas `key=value`, listas para pegar en un cliente de API.

Anatomía de una URL

Toma esta URL: https://user:pass@api.example.com:8443/v1/users?page=2&sort=name#profile. El analizador la descompone en:

Componente Valor
scheme https
user user
pass pass
host api.example.com
port 8443
path /v1/users
query page=2&sort=name
fragment profile

Después, la cadena de consulta se despliega en su propia tabla: page = 2 y sort = name.

Cómo se lee la cadena de consulta

  • Los valores se decodifican del formato porcentual y + se convierte en un espacio, así que q=hello%20world y q=hello+world se leen ambos como hello world.
  • Cada par se divide por su primer =, de modo que token=a=b=c conserva a=b=c como valor.
  • Las claves repetidas conservan solo el último valor: ?id=1&id=2 devuelve id = 2. Para conservar todos los valores, usa la sintaxis de array id[]=1&id[]=2, que se muestra como una lista.
  • Las claves con corchetes como filter[status]=open se convierten en una estructura anidada, que se muestra como JSON.

Puertos, rutas y fragmentos

  • El puerto se muestra tal cual está escrito. No se añade ni se elimina nada, así que :443 aparece como 443 y una URL sin puerto deja la fila en blanco.
  • Una barra final cambia la ruta: https://a.com tiene una ruta vacía, mientras que https://a.com/ tiene la ruta /.
  • El fragmento (después de #) es un valor que solo usa el navegador para saltar a un ancla o gestionar un enrutador del lado del cliente. Nunca llega al servidor, así que todo lo que un backend deba leer va en la cadena de consulta.
  • El host se devuelve tal como se escribe; este analizador no convierte los dominios internacionalizados (no ASCII) a Punycode ni al revés.

Preguntas frecuentes

Sí. Un enlace relativo como /v1/users?ref=nav no tiene esquema ni host, así que esas filas quedan vacías mientras que la ruta y la consulta sí se rellenan. Solo se rechaza de plano una URL con un formato incorrecto, por ejemplo con un puerto no numérico como http://a.com:port.

Solo se conserva el último valor, así que ?id=1&id=2 devuelve id = 2, exactamente como lo leería un backend en PHP. Si necesitas todos los valores, usa la sintaxis de array id[]=1&id[]=2 y aparecerán como una lista.

El analizador muestra el puerto tal como está escrito. Nunca elimina un puerto por defecto ni añade uno que falte, así que una URL sin puerto muestra la fila en blanco y https://a.com:443 muestra 443.

La URL se envía a nuestro servidor para analizarla, ya que esta herramienta se ejecuta en el servidor y no solo en tu navegador. No guardamos las URLs en sí; solo registramos un recuento anónimo de que el analizador se ha usado.

Herramientas relacionadas

Herramienta disponible en otros idiomas