Constructor de Cadenas de Consulta

=

Ensambla una cadena de consulta correctamente codificada a partir de una lista de pares clave-valor. El constructor maneja caracteres reservados, espacios y entradas no ASCII de la manera que RFC 3986 espera, para que puedas introducir el resultado directamente en una URL sin que se rompa en ampersands o signos de igual.

Cómo construir una cadena de consulta

  1. 1

    Agrega tus pares

    Escribe cada nombre y valor de parámetro. Agrega más filas para claves adicionales.

  2. 2

    Deja que ocurra la codificación

    Los espacios se convierten en %20, el texto no ASCII se codifica en UTF-8 con porcentajes y se escapan caracteres reservados como & = # ?.

  3. 3

    Copia la salida

    Antepónlo a tu URL con ? o pégalo en Postman, curl o una llamada fetch().

Qué se codifica

Según RFC 3986, cualquier cosa fuera del conjunto no reservado (A-Z a-z 0-9 - _ . ~) debe ser codificada en porcentaje dentro de un componente de consulta. En la práctica, esto significa:

Carácter Codificado como Por qué
espacio %20 o + Ambiguo entre contextos
& %26 Separa pares, rompería la cadena
= %3D Separa clave de valor
# %23 Comienza el fragmento
? %3F Comienza la consulta en sí
/ %2F Seguro en rutas, arriesgado en valores

Claves repetidas

Cada fila se codifica por separado y conserva su orden. Si introduces tag dos veces, obtendrás tag=a&tag=b. Si tu servidor espera corchetes, escribe tag[] como clave. La herramienta no intenta adivinar la convención de tu framework.

Consejos

  • Siempre codifica los valores proporcionados por el usuario; nunca los concatenes en crudo en la URL.
  • Si un valor parece binario, codifícalo en base64url antes de introducirlo.

Preguntas frecuentes

El constructor siempre representa los espacios como %20 según RFC 3986. El analizador también acepta + y lo convierte en espacio en consultas de formulario.

Repite la clave: tags=php&tags=laravel. Algunos frameworks esperan notación de corchetes como tags[]=php&tags[]=laravel. Usa lo que analice tu backend.

Esa es la codificación de entidades HTML aplicada por tu motor de plantillas, no la cadena de consulta en sí. Asegúrate de no estar escapando doblemente la salida al renderizar dentro de un href.

No existe un límite práctico único; navegadores, proxies, CDN y servidores aplican topes distintos. Usa el cuerpo de la petición para cargas grandes.

Herramientas relacionadas

Herramienta disponible en otros idiomas