Encoders & Utilities

Analizador y constructor de URL

Analiza URLs en 8 componentes con tabla query y detección IDN/Punycode. Construye URLs. Resolver relativo.

Query parameters

Sobre esta herramienta

URL Parser & Builder descompone cualquier URL en sus ocho componentes del RFC 3986 — scheme, userinfo, host, port, path, query, fragment y la forma codificada original — y los presenta en un formulario editable. Cambie cualquier campo y la URL ensamblada se actualiza al instante. La query string se muestra como una tabla de pares nombre/valor, con percent-encoding adecuado aplicado a los caracteres especiales.

La herramienta también gestiona las operaciones relacionadas: detección de punycode/IDN en el host (una etiqueta xn-- se decodifica a su forma Unicode, un host Unicode se codifica a xn--), resolución de URL relativa contra una base (aplique ../foo?bar a https://example.com/a/b/c y obtenga https://example.com/a/foo?bar) y validación contra la especificación URL de la WHATWG (más estricta que el RFC 3986 en algunas áreas, notablemente el parseo de authority).

Cuándo utilizar esta herramienta

  • Depurar manejo de URL. Una redirección que llega como %25 en vez de % — encuentre el paso de doble codificación en su stack.
  • Construir enlaces seguros. Construya URL a partir de entrada de usuario con escape adecuado en lugar de concatenación de cadenas.
  • Verificar una URL sospechosa. Decodifique intentos de traversal %2E%2E ofuscados, trucos homográficos IDN y phishing por userinfo a simple vista.
  • Trabajar con OAuth y redirecciones. Confirme que los parámetros redirect_uri están codificados correctamente antes de que el servidor de autenticación los rechace.

Sobre percent-encoding

El RFC 3986 reserva un puñado de caracteres con significado estructural (:/?#[]@!$&'()*+,;=). Dentro de segmentos de path y valores de query deben ir percent-encoded cuando aparezcan como datos en vez de sintaxis. Los parsers de URL modernos hacen esto automáticamente; la concatenación manual de cadenas no. Si se sorprende escribiendo "?key=" + value en código, casi seguro tiene un bug de inyección — use URLSearchParams o nuestro builder en su lugar.

Preguntas frecuentes

¿Cuál es la diferencia entre userinfo y el path?

Userinfo es todo lo que hay entre :// y el host: https://user:[email protected]/path. Es técnicamente legal en URL pero Chrome / Firefox lo eliminan de la barra de direcciones para prevenir phishing (https://[email protected]). Los clientes HTTP modernos advierten o lo rechazan. Si necesita credenciales en una URL, codifíquelas correctamente y prefiera cabeceras Authorization — userinfo en URL es un olor a problema de seguridad.

¿Por qué los valores de mi query string vuelven con %20 en vez de espacios?

Porque los espacios no son caracteres legales en URL — deben codificarse como %20 (percent-encoding) o como + (la variante más antigua form-urlencoded para query strings). Ambos decodifican a un espacio en el servidor. %20 es la forma universal; + solo funciona dentro de query strings, nunca en paths. Nuestro builder usa %20 en todos lados por seguridad.

¿Cómo funciona la resolución de URL relativa?

El RFC 3986 §5 especifica el algoritmo: divide la URL base en componentes, sustituye los componentes que la URL relativa proporcione y normaliza ./ y ../ en el path resultante. Ejemplos: ../x aplicado a /a/b/c/d da /a/b/x; //other.com/path aplicado a cualquier cosa da //other.com/path (una referencia «relativa al esquema»). Nuestra herramienta ejecuta este algoritmo y muestra la URL resuelta.

¿El parser detecta ataques homográficos IDN?

Detecta hosts codificados en punycode (las etiquetas xn--) y los decodifica a Unicode, así puede ver qué caracteres están realmente presentes. Un «google.com» con una о cirílica en vez de la o latina decodificará a una forma Unicode que contiene visiblemente el imitador. Combine con la herramienta Punycode para una inspección más profunda; los navegadores modernos también lo muestran en la barra de direcciones.