Iniciando con Node.js [Parte 2]
Continuando con el artículo Iniciando con Node.js [Parte 1], ahora vamos a hablar sobre la estructura de los objetos json, ya que nos serán muy útiles para enviar y recibir información hacia nuestro servidor.
Estructura JSON
JSON puede ser la forma más liviana, sencilla y limpia que existe para el intercambio de información (aún mejor que XML).
Podemos crear un objeto simple, utilizando las llaves { }, y colocando dentro de ellas las propiedades y valores que deseamos en nuestro objeto, por ejemplo:
{ id: 1012, nombre: "Juan", apellido: "López", edad: 25 }
De lado izquierdo (antes de los dos puntos) colocamos el nombre de nuestras propiedades y de lado derecho los valores que corresponden a cada una. Es importante que los valores que son tipo string se coloquen entre comillas, aunque en muchos ejemplos en internet vemos que colocan todo en comillas (incluyendo los nombres de las propiedades y los valores numéricos):
{ "id" : "1012", "nombre" : "Juan", "apellido" : "López", "edad" : "25" }
En todo caso, las dos formas de escribirlo nos funcionan de la misma manera.
Con javascript podemos guardar un objeto json dentro de alguna variable que necesitemos, siguiendo con el ejemplo anterior sería de la siguiente forma:
var usuario = { id: 1012, nombre: "Juan", apellido: "López", edad: 25 };
Al hacer esto podremos acceder a las propiedades del objeto usuario, tal y como lo haríamos en cualquier otro lenguaje orientado a objetos.
// Para asignarle un valor a la propiedad nombre de nuestro objeto usuario.nombre = "Pedro"; // Para recuperar el valor de la propiedad nombre de nuestro objeto console.log(usuario.nombre);
En los valores de las propiedades podemos incluso colocar otro objeto json, por ejemplo:
var usuario = { id: 1012, nombre: "Juan", apellido: "López", edad: 25, esposa: { nombre: "Marta", apellido: "Juarez" } };
En este ejemplo si queremos acceder al nombre de la esposa, deberíamos acceder a través de usuario.esposa.nombre.
También podemos crear un arreglo de objetos json, utilizando los corchetes [] y separando cada objeto por coma (,):
var usuarios = [ { id: 1012, nombre: "Juan", apellido: "López" }, { id: 1013, nombre: "Pedro", apellido: "Alvarado" } ];
Al hacer esto cada posición de nuestro arreglo tendrá el valor de cada uno de los objetos json, y debemos de especificar el índice al que corresponde para acceder a cada una de las propiedades, por ejemplo: si quiero acceder al nombre de Juan.
usuarios[0].nombre // Esto me retornara el nombre de "Juan"
y si queremos el nombre de Pedro:
usuarios[1].nombre // Esto me retornara el nombre de "Pedro"
Ahora bien, en node.js utilizamos un archivo llamado package.json (por eso me detuve a explicar la estructura de los objetos json).
Este archivo contiene información importante sobre nuestra aplicación (como nombre, versión, autor, dependencias, etc.) y debe estar ubicado en el root de nuestro proyecto.
La forma más sencilla de crear este archivo es utilizar el comando npm init (ubicándonos en el root de nuestro proyecto), al hacer esto, el programa nos irá guiando paso a paso, preguntándonos los valores que deseamos agregar a nuestro archivo:
En este ejemplo, el archivo que nos generará el programa npm init es el siguiente:
{ "name": "mi-proyecto", "version": "1.0.0", "description": "demostracion", "main": "index.js", "scripts": { "test": "echo "Error: no test specified" && exit 1" }, "keywords": [ "demo" ], "author": "wanderlp", "license": "ISC" }
Con lo que hemos visto anteriormente, ahora es fácil entender la estructura que lleva nuestro archivo package.json (podemos ver que la propiedad script contiene otro objeto json y la propiedad keywords puede contener un arreglo de varios valores).
Más adelante será necesario que modifiquemos este archivo para ir agregando las dependencias de nuestro proyecto (ya llegaremos a eso). También los objetos json nos servirán para enviar y recibir información de nuestro servidor web (también llegaremos a eso más adelante).
Eso es todo por el momento, en el siguiente artículo (que estará disponible muy pronto) vamos a hablar sobre algunos puntos importantes que necesitamos saber sobre javascript. Más allá de lo básico, necesitamos conocer como funcionan las llamadas asíncronas, los callback y las funciones anónimas. Y así llegaremos a escribir nuestro primer servidor en Node.js.
Buen artículo vos, saludos.
Gracias mister, saludos.