aprende cómo crear un api rest usando node.js, express y mongodb

Upload: luiseyzaguirre

Post on 07-Jul-2018

241 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    1/20

    45 10

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    0 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    2/20

    $ mkdir node-api-rest-example

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    0 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    3/20

    $ brew update

    $ brew install node

    package.json

    package.json

    {

    "name": "node-api-rest-example",

    "version": "2.0.0",

    "dependencies": {

    "mongoose": "~.!.",

    "express": "#.%.",

    "met&od-override": "#2..2","bod'-parser": "#.(."

    )

    )

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    0 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    4/20

    app.js

    var express * re+uire"express",

    app * express,

      bod'arser * re+uire"bod'-parser",

      met&od/verride * re+uire"met&od-override"

      mongoose * re+uire1mongoose1

    app.usebod'arser.urlencoded{ extended: alse )

    app.usebod'arser.3son

    app.usemet&od/verride

    var router * express.4outer

    router.get151, unctionre+, res {

    res.send"6ello 7orld8"

    )

    app.userouter

    app.listen000, unction {

    console.log"9ode server running on &ttp:55local&ost:000"

    )

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    0 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    5/20

    bodyParser methodOverride()

    app.route(nombre_de_la_ruta)

    .get() .post() …

    express.Router()

    GET Hello World

    $ node app.3s

    9ode server running on &ttp:55local&ost:000 

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    0 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    6/20

    $ git add .

    $ git commit -m 1nitial commit1

    models/tvshow.js

    var mongoose * re+uire1mongoose1,

    ;c&ema * mongoose.;c&ema

    var tvs&ow;c&ema * new ;c&ema{

    title: { t'pe: ;tring ),

      'ear: { t'pe: 9umber ),

      countr': { t'pe: ;tring ),

      poster: { t'pe: ;tring ),

      seasons: { t'pe: 9umber ),

      genre: { t'pe: ;tring, enum:

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    0 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    7/20

      summar': { t'pe: ;tring )

    )

    module.exports * mongoose.model1

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    8/20

      app.listen000, unction {

      console.log"9ode server running on &ttp:55local&ost:000"

    )

    )

    $ brew update

    $ brew install mongodb

    $ mongodall output going to: 5usr5local5var5log5mongodb5mongo.log

    node app.js

    $ node app.3s

    9ode server running on &ttp:55local&ost:000 

    >onnected to ?atabase

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    0 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    9/20

    $ mongo

    @ongo?A s&ell version: 2.. 

    connecting to: test

    B use tvs&ows

    switc&ed to db tvs&ows

    B s&ow dbs

    local 0.0%C2(DA

    tvs&ows empt'

    BE

    controllers/tvshows.js exports

    55File: controllers5tvs&ows.3svar mongoose * re+uire1mongoose1

    var 

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    10/20

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    11/20

      'ear: re+.bod'.'ear,

      countr': re+.bod'.countr',

      poster: re+.bod'.poster,

      seasons: re+.bod'.seasons,

      genre: re+.bod'.genre,  summar': re+.bod'.summar'

    )

      tvs&ow.saveunctionerr, tvs&ow {

    ierr return res.status(00.send err.message

      res.status200.3sonptvs&ow

    )

    )

    tvshow

    .save()

    55J< - Jpdate a register alread' exists

    exports.update

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    12/20

    ierr return res.status(00.senderr.message

      res.status200.3sonptvs&ow

    )

    )

    )

    55?GKG

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    13/20

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    14/20

    {

    "title": "K/;

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    15/20

    mongod

    $ mongo

    @ongo?A s&ell version: 2.. 

    connecting to: test

    B s&ow databases

    tvs&ows 0.202(DA

    B use tvs&owsswitc&ed to db tvs&ows

    B s&ow collections

    s'stem.indexes

    tvs&ows

    B db.tvs&ows.ind

    { "title" : "K/;

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    16/20

    GET

    tvshows/:id

    PUT DELETE POST

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    20 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    17/20

    45 10

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    20 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    18/20

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    20 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    19/20

    41 Comentarios   1

    • •

    alx_lopz •

    Hola carlos quisiera saber como habilito CORS ya que mi navegador me lanza este error

    en consola: "XMLHttpRequest cannot load http://api.midominio/colores. No 'Access-

    Control-Allow-Origin' header is present on the requested resource. Origin

    'http://localhost:9000' is therefore not allowed access". Subí mi api a un server con nginx,

    si entro a api.midominio/colores si me despliega el json en crudo, pero cuando lo conecto

    en mi app angular no carga los valores y me lanza dicho error.

    • •

    Carlos Azaustre •Moderador

    Hola @alx_lopz

    Eso puedes arreglarlo con este paquete: https://www.npmjs.com/package/... e

    indicando la URL donde tienes tu app angular :)

    Saludos!

    • •

    Luca Enzô •

    Grandísimo ejemplo. Muy práctico y dinámico además de contar con el repositorio

    completo.Una de las mejores extensiones para probar la app la ppodréis encontrar en

    http://insomnia.rest/ . Es mas cómoda e intuitiva que restconsole.com, cuya web además

    ya no existe.

    • •

    Frank •

    Yo cuando trato de hacer un tutorial tuyo no me sale nunca, no sé que clase de brujeria

    es esta pero igual gracias por los tutoriales. ptt: me perdí ya que no agregaste en el

    app.js el modelo de tvshow, luego tratas de hacer el tutorial que tienes hecho en youtube

    y resulta que es de una versión antigua de express y tampoco funciona.

    VooDoo •

    Hola Carlos, excelente tutorial! Me ha resultado muy muy util, funciona todo genial.

    Aun asi, hay un pequeño detalle que no me va bien. Mi intencion es usar dos modelos a

    la vez (en la misma base de datos). Comparandolo con tu caso seria base de datos

    "tvshows" y modelos "tvshows" y "weather". Siguiendo tu ejemplo no parece complicado,

      " "

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando

    20 3/26/2016

  • 8/19/2019 Aprende Cómo Crear Un API REST Usando Node.js, Express y MongoDB

    20/20

    nde cómo crear un API REST usando Node.js, Express y MongoDB https://carlosazaustre.es/blog/como-crear-una-api-rest-usando