DAWM

Regresar

Express - REST I

A lo largo de los años, existieron algunas interfaces de comunicación (API) populares entre cliente y servidor. Sin embargo, el más popular se llama REST definido en 2000 por Roy Fielding. Es una arquitectura que aprovecha el protocolo HTTP para permitir la comunicación entre un cliente y una aplicación de servidor. Una aplicación de servidor que ofrece una API REST también se denomina servidor RESTful. Los servidores que no siguen la arquitectura REST al 100% se llaman RESTish en lugar de RESTful. A continuación, implementaremos dicha API REST para nuestra aplicación de servidor Express, pero primero conozcamos las herramientas que nos permiten interactuar con una API REST.

Software a utilizar


De MySQL Community Downloads, descargue e instale:

Curl + Jsontool


curl https://dawm-fiec-espol-default-rtdb.firebaseio.com/potterhead.json | json

Que resulta en:

Proyecto en Express: REST API


Crea un nuevo proyecto, según Express - Bases, Express - ORM (Básico), Express - ORM (Intermedio) y Express - Parámetros de consulta y Parámetros de ruta.

Manejador de rutas y registro en la aplicación

var express = require('express');
var router = express.Router();

const { Sequelize, Op } = require('sequelize');
const Foto = require('../models').foto;
const Etiqueta = require('../models').etiqueta;  
...

GET-All

Para obtener TODOS los registros de una entidad en una base de datos relacional, implemente el controlador para el verbo GET con el método findAll de la clase.

GET-id

Para obtener UN registro de una entidad en una base de datos relacional, implemente el controlador para el verbo GET con el método findOne de la clase.

POST

Para guardar UN registro de una entidad en una base de datos relacional, implemente el controlador para el verbo POST con el método create de la clase.

PUT

Para actualizar UN registro de una entidad en una base de datos relacional, implemente el controlador para el verbo PUT con el método update de la clase.

DELETE

Para eliminar UN registro de una entidad en una base de datos relacional, implemente el controlador para el verbo DELETE con el método destroy de la clase.

Referencias