Skip to content

leandroecabello/API_Delailah_Resto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

API Delailah Resto

Proyecto 3 del curso DWFS de ACAMICA

Objetivo

Realizar Backend creando una API rest que permita realizar pedidos a un restaurante llamado Delailah Resto

Tecnologías utilizadas

  • Node.js (v12.13.0)
  • Express
  • JWT
  • MySQL
  • Sequelize
  • Postman para testear los endpoints
  • Swagger para crear documentación

opcional: puede instalar nodemon como entorno de desarrollo para un reinicio automático del servidor

npm install nodemon --save-dev


Iniciando

1-Primeros pasos

  • Clonar Repositoio

Abrir terminal en la carpeta donde se va a clonar el proyecto y escribir el siguiente comando:

git clone http://github.com/leandroecabello/API_Delailah_Resto

y presione Enter.

2- Instalación de paquetes:

Las dependencias se instalan con el siguiente comando:

npm install

3- XAMPP:

Instalar XAMPP o algún otro sistema de gestión de base de datos MySQL. Se puede descargar e instalar en https://www.apachefriends.org/es/index.html.

En XAMPP se debera tener activado los módulos Apache y MySQL para poder realizar consultas a la base de datos.

obs: si utiliza otra herramienta realizar las operaciones equivalentes, por ej. mysqlworbench no requiere tener activo Apache

4- Cargar Base de datos

La misma se encuentra en la carpeta db con el nombre delilah_resto_db, cuenta con datos de usuarios (1 admin y 2 users) y productos listos para realizar las consultas que precise.

Puede ser ejecutada desde su gestor preferido o bien por consola

5- Iniciando Servidor

Es momento de comenzar!!

por consola nos posicionamos en la carpeta correspondientes y ejecutamos:

npm start

o Si tiene nodemon instalado

npm run dev

Listo para realizar las consultas

Consultas

Endpoint Users

CREAR USUARIO

POST /users

Ejemplo de peticion

rol : (1: Admin, 0: User)

obs: el rol es optativo por defecto sera user en el ejemplo le agregaremos is_admin para generar un usuario admin

{  

    "username": "superUser",
    "fullname": "Leandro",  
    "email": "leandro@mail",  
    "phone": "123456789",
    "adress": "calle sin nonombre 123",
    "password": "root123",
    "is_admin": 1                  

}

Respuesta

{ message: 'User created successfully.' }

POST /login

Ejemplo

{  
  "username": "bootUser",
  "pass": "abc123"                
}

Respuesta

{
  "message": "Logged in successfully.",
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6NSwiZnVsbG5hbWUiOiJ...."
}

VALIDAR USUARIO PARA REALIZAR UNA PETICIÓN

Ejemplo

POST /products

En Header configurar "KEY" como "Authorization" y en "VALUE" colocar "Bearer " y el "token" correspondiente.

obs : dejar espacio entre el bearer y el token

Respuesta

[
    {
        "id": 7,
        "product_name": "Hamburguesa Clasica",
        "description": null,
        "price": 350,
        "product_image": null
    },
    {
        "id": 8,
        "product_name": "Sandwich Veggie",
        "description": null,
        "price": 310,
        "product_image": null
    }
]    

Open API

Para más información, ingresar al siguiente enlace docuAPI donde encontrara toda la documentacón necesaria o abrir archivo openapi.yml del repositorio

About

Proyecto API para curso de DWFS de ACAMICA

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published