Formato de código / Guías

Crear una cadena de consulta sin codificar dos veces

Una consulta URL tiene estructura: claves, valores y separadores. Codificar un valor y construir la consulta completa son tareas distintas.

Separa estructura y datos

Una consulta URL suele aparecer tras el signo de interrogación como pares clave=valor separados por ampersands. Esos delimitadores tienen un significado estructural. Si el propio valor contiene un ampersand, debe representarse dentro del valor para que no parezca otro par. El codificador de componentes prepara una pieza de datos; el constructor de consultas toma claves y valores y une toda la estructura. Son dos niveles de trabajo. No pases una consulta completa por el codificador de componentes: los signos de interrogación, iguales y ampersands pasarían a ser datos. Tampoco pegues valores sin codificar entre separadores confiando en que el navegador adivine sus límites.

Un ejemplo con claves repetidas

Supón que una búsqueda necesita q con el valor red & blue y dos etiquetas tag, a y b. Entrega al conversor de JSON a consulta un objeto con q como texto y tag como arreglo. La serialización de formulario produce q=red+%26+blue&tag=a&tag=b. El signo más representa un espacio en este convenio, mientras %26 protege el ampersand dentro de la frase. Si analizas la salida con la herramienta inversa, q vuelve a ser red & blue y tag se convierte en un arreglo de dos textos. La repetición es intencionada: tag=a&tag=b no equivale a un solo valor con coma. Cambia una etiqueta en la herramienta integrada.

Los separadores forman la estructura; la frase sigue siendo un valor.
  1. Origen: q = red & blue; tag = a, b
  2. Consulta: q=red+%26+blue&tag=a&tag=b
  3. Análisis: q es una frase; tag tiene dos valores

Por qué un componente se ve distinto

El codificador URL específico aplica las reglas de un único componente. Un espacio puede aparecer como %20, mientras un serializador de consulta basado en URLSearchParams emplea más. Ambas grafías pueden ser válidas según el contexto, pero no son cadenas idénticas. Un signo más literal en una consulta de formulario debe escaparse para que el analizador no lo convierta en espacio. Volver a codificar un porcentaje ya codificado produce %25, indicio habitual de doble codificación accidental. Conserva las claves y valores originales hasta que el constructor se ocupe de ellos, o codifica una sola pieza antes de armar manualmente la consulta. No mezcles los dos métodos.

Qué conserva la vuelta

El analizador de consultas de MultiVerto convierte las claves repetidas en arreglos. Todos los valores llegan como texto, aunque el objeto JSON de entrada hubiera contenido un número o un booleano. No recupera por sí mismo el tipo numérico original. Los arreglos vacíos y los objetos anidados tampoco tienen representación directa en este formato simple de pares, por lo que el constructor los rechaza. Distintas API establecen políticas distintas para valores vacíos, claves duplicadas y orden. La ida y vuelta puede conservar los pares útiles sin conservar todos los detalles de un objeto JSON más rico. Consulta la documentación del servicio antes de decidir cómo enviar arreglos, ausencias y cadenas vacías.

Prepara una prueba estable

Empieza por la dirección de destino y anota por separado cada clave y su valor original. Construye la consulta una sola vez y examina cómo quedaron los caracteres reservados. Analízala de nuevo para confirmar los pares previstos, sobre todo si contienen ampersands, signos más, porcentajes o texto no ASCII. Prueba una clave repetida si el servidor admite arreglos y confirma que la interpreta de la misma manera. No incluyas secretos en la consulta solo porque sus caracteres estén codificados: una URL puede copiarse, registrarse y compartirse. MultiVerto calcula el ejemplo en el navegador, pero la URL que publiques tendrá otras reglas de visibilidad.

Prueba el convertidor

Construye la consulta de ejemplo y vuelve a analizar sus pares.

Escribe un objeto JSON plano como parámetros de consulta URL.

Abrir el convertidor completo

Más guías

Guías de conversión

Explorar guías