jueves, 16 de julio de 2020

Ejemplo sencillo de Mockserver con json-server

Si estas leyendo esto es porque te interesa sacarle partido a los mockservers. Estos te permiten desarrollar el frontend sin que el backend esté terminado. Solo necesitas definir y acordar con los desarrolladores del backend, los "End-points" que recibirá la API y cual será el formato de la respuesta.

Con Json server puedes suplantar la funcionalidad ofrecida por el API. De esta forma puedes ir desarrollando tu frontend sin más esperas.

¿Qué es lo que tienes que hacer?

  1. Instalar node desde https://nodejs.org/en/
  2. instalar Json server con "npm install -g json-server"
  3. Descargar el proyecto en local con "git clone https://github.com/MarisaAfuera/Ejemplo-Json-server.git"
  4. Arrancar Json server con "json-server --watch db.json"
El fichero db.json es el que Json server interpreta cómo el contenedor de datos. En el caso de este ejemplo contiene:
{
  "users": [
    {
      "name": "Hills.Yesenia",
      "id": 1
    },
    {
      "name": "Juliana.Bednar",
      "id": 2
    },
    {
      "name": "Lebsack.Afton",
      "id": 3
    },
    {
      "name": "Davis_Sonny",
      "id": 4
    },
    {
      "name": "Pasquale.Hartmann",
      "id": 5
    },
    {
      "name": "Moore_Chelsie",
      "id": 6
    },
    {
      "name": "Jayda.Effertz",
      "id": 7
    },
    {
      "name": "Weissnat_Craig",
      "id": 8
    },
    {
      "name": "Bernhard_Roman",
      "id": 9
    },
    {
      "name": "Lynch.Vincenzo",
      "id": 10
    }
  ]
}
     5. Consultar la base de datos desde el browser con http://localhost:3000/users .Esto mostrará en el browser el contenido del fichero db.json.


ACCEDER A LOS DATOS DESDE MÓDULO JAVASCRIPT

  1. Instalar node-fetch con "npm install --save node-fetch"
  2. Ejecutar el módulo readdata.js con "node readdata.js". Este módulo mostrará en la consola la lista de usuarios contenidos en db.json.

POBLANDO LA BASE DE DATOS

  1. Instalar CASUAL con "npm install casual". Es un generador de datos aleatorios, en este ejemplo se usa para generar nombres
  2. Consultar el contenido del fichero db.json
  3. Ejecutar populatedb.mjs con "node populatedb.mjs"
  4. Consultar de nuevo el contenido del fichero db.json. Ahora contendrá datos de más usuarios. Esto es útil para generar datos de prueba y además regenerarlos cuando sea necesario.

Terminando

Espero que este pequeño ejemplo sea de utilidad, para arrancar con el uso de Mockservers. Realmente los Mockservers tienes más utilidades, cómo independizar las pruebas del frontend de las del backend y otros varios.

Si tienes problemas para entender, probar o desarrollar algo basado en el ejemplo aquí suministrado pornun comentario y te atenderé lo antes posible.

No hay comentarios:

Publicar un comentario