Imagina que necesitas desarrollar la funcionalidad de pago de facturas para una nueva fintech, con el objetivo de mantener el tráfico de datos lo mínimo posible para que todo siga funcionando bien, incluso en redes más lentas o con menos ancho de banda.
El formato JSON (JavaScript Object Notation) es, como su nombre indica, una forma de notación de objetos JavaScript para que se puedan representar de forma común a varios lenguajes.
Además, una idea que está fuertemente arraigada en este formato es que se transfiere fácilmente entre aplicaciones en cualquier protocolos, incluido HTTP. Entonces, la principal diferencia entre un objeto JavaScript estándar y un JSON es que el JSON es en realidad: un texto.
JSON debe contener solo informaciones que se puedan representar en formato de texto. Conozca algunas reglas:
Por lo tanto, imagine enviar un pago por una nueva factura con el nombre del cliente, cualquier identificador numérico del cliente y una lista de pagos a realizar en la factura en cuestión. Dichas informaciones tendrían, en JSON, el siguiente formato:
{
"cliente"; {
"id"; 2020,
"nombre"; "Maria Aparecida"
}
"pagos"; [
{
"id": 123,
"descripcion": "Compra del libro Cangaceiro JavaScript",
"valor": 50.5
},
{
"id": 124,
"descripcion": "Mensualidad escolar",
"valor": 1500
}
]
}
Aunque parezca un objeto JavaScript literal, el JSON presentado sigue exactamente todas las reglas que mencioné anteriormente. Además, es un formato mucho más simple y menos burocrático que el XML mundialmente famoso, que durante mucho tiempo se utilizó como estándar para enviar informaciones entre aplicaciones.
Como estas usando JavaScript, Java y PHP en las aplicaciones en las que están involucrados, les traje un pequeño ejemplo en estos lenguajes:
const factura = *// Creación del objeto factura.*
const facturaJSON = JSON.stringify(factura); *// Transforma el objeto literal en JSON.*
const nuevamenteObjFactura = JSON.parse(facturaJSON); *// Transforma el JSON en objeto literal.
$factura = *// Creación del objeto factura.*
$facturaJSON = json_encode($meuObj); *// Transforma el objeto en JSON.*
$nuevamenteObjFactura = json_decode($facturaJSON); *// Transforma el JSON en objeto.*
*// Java usando la biblioteca Jackson*
Factura factura = *// Creación del objeto factura.*
ObjectMapper mapper = new ObjectMapper();
String jsonString = mapper.writeValueAsString(factura); *// Objeto Java a JSON string.*
Factura nuevamenteFactura = mapper.readValue(jsonString, Factura.class); *//JSON string a objeto Java.*
Con esto podrás transferir las informaciones que necesites, cumpliendo con los requisitos que planteamos al inicio de este artículo.
Aprenda más en Alura Latam ¿Te gustó e interesó este contenido? ¡Aquí en En Alura tenemos cursos en el área de programación para iniciantes!.
Gabriel Leite es un desarrollador e instructor con enfoque en Java, Ionic y Node.js.
Puedes leer también:
Cursos de Programación, Front End, Data Science, Innovación y Gestión.
Luri es nuestra inteligencia artificial que resuelve dudas, da ejemplos prácticos y ayuda a profundizar aún más durante las clases. Puedes conversar con Luri hasta 100 mensajes por semana
Paga en moneda local en los siguientes países
Cursos de Programación, Front End, Data Science, Innovación y Gestión.
Luri es nuestra inteligencia artificial que resuelve dudas, da ejemplos prácticos y ayuda a profundizar aún más durante las clases. Puedes conversar con Luri hasta 100 mensajes por semana
Paga en moneda local en los siguientes países
Puedes realizar el pago de tus planes en moneda local en los siguientes países:
País | |||||||
---|---|---|---|---|---|---|---|
Plan Semestral |
487.37
BOB |
68314.51
CLP |
305385.67
COP |
65.90
USD |
265.11
PEN |
1424.44
MXN |
2977.87
UYU |
Plan Anual |
738.82
BOB |
103560.24
CLP |
462944.29
COP |
99.90
USD |
401.89
PEN |
2159.35
MXN |
4514.26
UYU |
Acceso a todos
los cursos
Estudia las 24 horas,
dónde y cuándo quieras
Nuevos cursos
cada semana