Node es una plataforma que permite la ejecución de código javascript sin hacer uso del navegador.
Al instalar node.js , tendremos acceso a dos herramientas, node y npm.
La aplicación node contiene librerías (modulos) y es la encargada de correr el código javascript
En cambio npm es un gestor de paquetes
Para correr codigo javascript usando node, solo basta utilizar el programa node desde la consola o bien abriendo el programa node el cual aceptara cualquier codigo javascript
Por ejemplo, si creo un archivo llamado hola.js
console.log("Hola Mundo")$ node hola.js
> Hola MundoAl igual que en el navegador, existen variables globales dentro de node.
Una de las mas usada es la variable process que representa el proceso actual.
Podemos finalizar el proceso utilizando la funcion exit definida sobre process.
process.exit([code])Otras variables globales:
Al ejecutar un archivo javascript, podemos pasarle argumentos y accederlos luegos desde el atributo argv de la variable global process
process.argvconsole.log(process.argv)
$ node argumentos.js hola
> ["node", "argumentos.js", "hola"]Por ejemplo
Podemos cargar las librerias de node utilizando la función require.
require(nombre del modulo)Por ejemplo
var fs = require('fs')La libreria fs se encarga de manejar la Entrada-Salida del Sistema de archivos. Con esta libreria, vamos a poder leer y escribir (entre otras cosas) archivos.
fs.readFile(file,encode,callback)Para leer
fs.writeFile(file,text,callback)Para escribir
Podemos cargar nuestras librerias utilizando la función require y pasandole como argumento el archivo a cargar.
require('carpeta/modulo')Por ejemplo
NPM es un gestor de paquetes. Nos permitira instalar modulos creados por nosotros u otras personas y hacer uso de los mismos de una manera prolija.
Para instalar un paquete solo basta usar el comando npm install seguido del nombre del paquete a instalar
$ npm install my_paqueteAl instalar un paquete, npm nos creara una carpeta node_modules donde incluirá los archivos descargados.
$ npm install my_paquete --globalPodemos instalar paquetes de forma global, pasando como argumento --global
Podemos agregar el paquete a nuestro sistema, pasando como argumento --save
$ npm install my_paquete --saveTodos los módulos instalables desde npm contienen un archivo llamado package.json el cual describe el paquete a instalar.
{
"name": "nombre del paquete",
"version": "1.0.0",
"description": "algun detalle",
"main": "index.js",
"dependencies": {
"lodash": "^2.4.1"
}
}El manejo de peticiones, se realiza mediante el request y response.
Gestiona la Entrada-Salida en la red.
El objeto request contiene la información de la petición realizada (entrada), como por ejemplo
El objeto response contiene la información que sera enviada (salida) la cual contendrá
Se utilizan para informar el estado de la petición
| REST/HTTP | CRUD |
|---|---|
| GET | Read |
| POST | Read,Update,Delete |
| PUT | Update |
| DELETE | Delete |
Se hace referencia a CRUD cuando se habla de operaciones definidas sobre Bases de Datos. En cambio REST es una arquitectura para el diseño de sistemas.
GET /usuarios
GET /usuarios/1POST /usuariosPUT /usuarios/1DELETE /usuarios/1PATCH /usuarios/1