Servicio rest con nodejs, express 4 y mysql
Servicio rest con nodejs, express 4 y mysql

Mongoose ofrece una solución sencilla, basado en esquemas para el modelado de datos de la aplicación e incluye una función de conversión de tipos, validación, construcción de consultas y mucho más, todo esto con una interfaz javascript con lo que se hace muy sencillo crear aplicaciones haciendo uso de Mongoose.

Ya vimos cómo realizar algo parecido utilizando NodeJS, Express 4 con mysql, ahora lo haremos haciendo uso de mongoose, así que empecemos.

Recomiendo el uso de Robomongo como interfaz para el manejo de nuestras bases de datos si no te gusta demasiado la terminal, está disponible para windows, linux y mac.

Creamos el proyecto:


Añadimos mongoose:


Abrimos el proyecto y creamos un nuevo archivo en la raíz llamado db.js y lo abrimos para definir nuestro Schema y la conexión con nuestra base de datos que se llamará cursos.


Con esto ya tenemos nuestro Schema y la conexión con nuestra base de datos cursos(mongodb://127.0.0.1/cursos) que debemos tener definida.

Ahora abre el archivo app.js y añade al principio la siguiente línea, simplemente hacemos un require de db.js, así ya tenemos nuestra lógica algo separada.


Ya tenemos toda la configuración necesaria, recuerda lanzar tu servidor mongo con mongod.

Abrimos el archivo routes/index.js y añadimos las siguientes líneas al principio del mismo.


En Curso ya tenemos la conexión con nuestra colección cursos, así que estamos en disposición de ejecutar todas las consultas que necesitemos.

Las peticiones las haremos a través de curl utilizando postman, una aplicación disponible en chrome que es perfecta para realizar peticiones contra servicios rest.

Crear un nuevo curso

Obtener todos los cursos

Obtener un curso por su nombre

Actualizar un curso por su _id

Eliminar un curso por su _id


Para las peticiones post y put utiliza el modo x-www-form-urlencoded para enviar los datos.

Eso es todo, así de sencillo es poder montar un servicio rest haciendo uso de nodejs, express 4 y mongoose, espero que te guste y te sea útil, si es así, comparte el post en las redes sociales.