Saltar al contenido

Cómo pasar un JSON array como un parámetro en la URL

Nuestros mejores investigadores han agotado sus depósitos de café, en su búsqueda noche y día por la resolución, hasta que Olivia encontró la contestación en Gogs y hoy la comparte aquí.

Solución:

Sugeriría pasar los datos JSON en el cuerpo como un POST solicitud. Pero si aún desea pasar esto como un parámetro en la URL, deberá codificar su URL como se muestra a continuación, solo por ejemplo: –

para ex json es :->"name":"ABC","id":"1"

testurl:80/service?data=%7B%22name%22%3A%22ABC%22%2C%22id%22%3A%221%22%7D

para obtener más información sobre la codificación de URL, consulte a continuación

https://en.wikipedia.org/wiki/Percent-encoding

Sé que esta podría ser una publicación posterior, pero para los nuevos visitantes compartiré mi solución, ya que el OP estaba solicitando una forma de pasar un objeto JSON a través de GET (no POST como se sugiere en otras respuestas).

  1. Tome el objeto JSON y conviértalo en string (JSON.stringify)
  2. toma el string y codificarlo en Base64 (puede encontrar información útil sobre esto aquí
  3. Añádelo a la URL y haz la llamada GET
  4. Invierta el proceso. decodificarlo y analizarlo en un objeto

He usado esto en algunos casos en los que solo puedo hacer llamadas GET y funciona. Además, esta solución es prácticamente multilingüe.

Sé que esto es antiguo, pero si alguien más quiere saber por qué obtienen json incompleto como el anterior es porque el ampersand & es un carácter especial en las URL que se utiliza para separar parámetros.
En sus datos hay un ampersand en R&R. Entonces, el parámetro acc termina cuando llega al carácter ampersand.

Es por eso que está obteniendo datos cortados. La solución es codificar en URL los datos o enviarlos como POST como sugiere la solución aceptada.

Reseñas y calificaciones

Si para ti ha sido de ayuda nuestro artículo, sería de mucha ayuda si lo compartes con otros desarrolladores de este modo nos ayudas a extender este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *