APIs	
  REST	
  con	
  	
  
NodeJS	
  y	
  MongoDB	
  
1.	
  REST:	
  Representa0onal	
  State	
  Transfer	
  
	
  -­‐ 	
  Definición	
  
	
  -­‐ 	
  Principios	
  
2.	
  REST	
 ...
1.	
  Node.js 	
  	
  
	
  -­‐ 	
  hCp://nodejs.org/download/	
  
2.	
  MongoDB 	
  	
  
	
  -­‐ 	
  hCp://www.mongodb.org...
1.	
  REST:	
  Representa0onal	
  State	
  Transfer	
  
REST	
  APIs	
  con	
  NodeJS	
  y	
  MongoDB	
  
1.	
  Qué	
  es?...
1.	
  REST:	
  Principios	
  y	
  restricciones	
  
REST	
  APIs	
  con	
  NodeJS	
  y	
  MongoDB	
  
1.	
  Recursos	
  y	...
1.	
  REST:	
  Beneficios	
  
REST	
  APIs	
  con	
  NodeJS	
  y	
  MongoDB	
  
Cliente-­‐
Servidor	
  
Stateless	
   Cache...
2.	
  REST	
  APIs	
  con	
  NodeJS	
  y	
  ExpressJS	
  
REST	
  APIs	
  con	
  NodeJS	
  y	
  MongoDB	
  
1.	
  Servidor...
3.	
  REST	
  APIs	
  con	
  NodeJS	
  y	
  MongoDB	
  
REST	
  APIs	
  con	
  NodeJS	
  y	
  MongoDB	
  
1.	
  Qué	
  es	...
3.	
  REST	
  APIs	
  con	
  NodeJS	
  y	
  MongoDB	
  
REST	
  APIs	
  con	
  NodeJS	
  y	
  MongoDB	
  
1.	
  MongoDB	
 ...
Referencias	
  
	
  
-­‐ 	
  APIGEE	
  
hCp://apigee.com/	
  
	
  
-­‐ 	
  REST	
  API	
  Tutorial	
  
hCp://www.restapitu...
 	
   	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  /jorgezaccaro	
  
	
  	
  	
  /bogotajs-­‐apis	
  
REST	
  APIs	
  con	
...
Próxima SlideShare
Cargando en…5
×

APIs REST con NodeJS y MongoDB

910 visualizaciones

Publicado el

An introduction to the REST architectural style and the implementation of REST APIs using NodeJS and MongoDB.

Publicado en: Tecnología
0 comentarios
3 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

Sin descargas
Visualizaciones
Visualizaciones totales
910
En SlideShare
0
De insertados
0
Número de insertados
38
Acciones
Compartido
0
Descargas
15
Comentarios
0
Recomendaciones
3
Insertados 0
No insertados

No hay notas en la diapositiva.

APIs REST con NodeJS y MongoDB

  1. 1. APIs  REST  con     NodeJS  y  MongoDB  
  2. 2. 1.  REST:  Representa0onal  State  Transfer    -­‐  Definición    -­‐  Principios   2.  REST  APIs  con  NodeJS    -­‐  Servidor  HTTP    -­‐  Usando  ExpressJS   3.  REST  APIs  con  MongoDB    -­‐  Mongo  shell    -­‐  MongoDB  driver       CONTENIDO   REST  APIs  con  NodeJS  y  MongoDB  
  3. 3. 1.  Node.js      -­‐  hCp://nodejs.org/download/   2.  MongoDB      -­‐  hCp://www.mongodb.org/downloads   3.  MongoDB  driver    -­‐  npm  install  mongodb   4.  ExpressJS    -­‐  npm  install  express   5.  Otros    -­‐  npm  install  body-­‐parser   REQUISITOS   REST  APIs  con  NodeJS  y  MongoDB  
  4. 4. 1.  REST:  Representa0onal  State  Transfer   REST  APIs  con  NodeJS  y  MongoDB   1.  Qué  es?      -­‐  Un  esLlo  de  arquitectura  de  soOware   2.  Qué  no  es?      -­‐  Un  estándar  o  protocolo   3.  Quién  lo  propuso?      -­‐  Roy  Fielding  en  su  tesis  doctoral   4.  Transferencia  de  qué?    -­‐  De  la  representación  del  estado  de  recursos   5.  Por  ejemplo?    -­‐  World  Wide  Web,  Facebook  Graph  API  
  5. 5. 1.  REST:  Principios  y  restricciones   REST  APIs  con  NodeJS  y  MongoDB   1.  Recursos  y  representaciones    -­‐    Todo  en  términos  de  recursos  en  general,  no  de  archivos  específicos   2.  Recursos  iden0ficados  con  URIs      -­‐    No:        facebook.com/profile.php    -­‐  Si:        facebook.com/username    -­‐    Si:        twiCer.com/username/status/:tweetID     3.  Operaciones  sobre  recursos  con  métodos  HTTP      -­‐  GET            -­‐  PUT    -­‐  POST          -­‐  DELETE   4.  Interfaces  uniformes  con  sustan0vos,  no  verbos      -­‐  No:        /obtenerSaldoACuenta    -­‐  No:        /agregarSaldoACuenta    -­‐  Si:    GET    /cuentas/#cuenta/saldo    -­‐  Si:    POST  /cuentas/#cuenta/saldo  
  6. 6. 1.  REST:  Beneficios   REST  APIs  con  NodeJS  y  MongoDB   Cliente-­‐ Servidor   Stateless   Cacheable   Layered   Eficiencia   x   Escalabilidad   x   x   x   Desempeño   percibido   x   x  
  7. 7. 2.  REST  APIs  con  NodeJS  y  ExpressJS   REST  APIs  con  NodeJS  y  MongoDB   1.  Servidor  HTTP      -­‐  api    =  require(‘express’)()    -­‐  hCp  =  require(‘hCp’).createServer(api)   2.  Enrutamiento  de  solicitudes      -­‐    api.route(…)          -­‐  api.all(…)    -­‐    api.get(…)        -­‐    api.put(…)    -­‐    api.post(…)        -­‐    api.delete(…)   3.  Procesamiento  de  las  solicitudes    -­‐    req.body    -­‐  req.params   4.  Respuesta  a  las  solicitudes    -­‐    res.status(…)        -­‐  res.setHeader(…)    -­‐  res.write(…)        -­‐  res.end(…)    
  8. 8. 3.  REST  APIs  con  NodeJS  y  MongoDB   REST  APIs  con  NodeJS  y  MongoDB   1.  Qué  es  MongoDB?      -­‐  Una  base  de  datos  no  relacional  (NoSQL)   2.  Cuál  es  la  unidad  de  almacenamiento      -­‐  Documentos  (vs  filas  en  SQL)   3.  Cuál  es  la  unidad  de  agrupación?      -­‐  Colecciones  (vs  tablas  en  SQL)   4.  Licencias  o  regalías?    -­‐  No,  es  open  source     5.  Ventajas  para  JavaScript?    -­‐  Notación  muy  similar      -­‐  No  requiere  esquemas  (i.e.  tablas  SQL)    -­‐  Los  documentos  lucen  como  objetos    
  9. 9. 3.  REST  APIs  con  NodeJS  y  MongoDB   REST  APIs  con  NodeJS  y  MongoDB   1.  MongoDB  driver      -­‐  mongoClient  =  require(‘mongodb’).MongoClient   2.  Conectarse  a  una  base  de  datos    -­‐    mongoClient.connect('mongodb://localhost:27017/databaseName’)   3.  Acceder  a  una  colección    -­‐  db.collecLon(‘collecLonName’)   4.  Operaciones  CRUD  (Create,  Read,  Update,  Delete)    -­‐    Create:    collecLon.insert(document)    -­‐    Read:    collecLon.find(query)      -­‐    Update:    collecLon.update(query,  modifier)    -­‐    Delete:    collecLon.remote(query)     5.  Mongo  Shell    -­‐  mongod    Inicia  el  proceso  de  la  base  de  datos  MongoDB    -­‐  mongo    Inicia  una  interfaz  de  línea  de  comandos  a  MongoDB  
  10. 10. Referencias     -­‐  APIGEE   hCp://apigee.com/     -­‐  REST  API  Tutorial   hCp://www.restapitutorial.com/     -­‐  ExpressJS   hCp://expressjs.com/     -­‐  MongoDB   hCp://docs.mongodb.org/manual/core/crud-­‐introducLon/   hCps://github.com/mongodb/node-­‐mongodb-­‐naLve     REST  APIs  con  NodeJS  y  MongoDB  
  11. 11.                          /jorgezaccaro        /bogotajs-­‐apis   REST  APIs  con  NodeJS  y  MongoDB  

×