Workshop Fullstack Javascript
  • Bienvenid@s 👨🏼‍💻👩🏻‍💻
  • Prerequisitos 💻🔧
  • Backend
    • Introducción
      • Configuración Inicial
    • Node.js
    • Express.js
      • Configuración
      • Carpeta API
      • Rutas
    • Mongoose.js
      • Conectando a Mongosse
      • Esquemas y Modelos
      • Métodos
      • Rutas
      • Retos 🕵🏻‍♀️ 💻 🕵🏻‍♂️
    • Passport.js
      • Modelo User
      • Estrategia Local
      • Autenticación Service
      • API users
      • Configuración Passport.js
      • Middleware
      • Retos 🦸🏻‍♀️🕵🏼‍♂️
    • Refactor
    • Despliegue 🚀
  • Frontend
    • ReactJS 💙
      • Configuración Inicial
      • Componentes
      • Pages
      • Rutas
      • Conectando la API
      • Authenticación
      • Despliegue 🚀
    • VueJS 💚
      • Configuración Inicial
  • GraphQL
    • pronto...🤷🏼‍♂️
Powered by GitBook
On this page

Was this helpful?

  1. Backend
  2. Passport.js

Middleware

PreviousConfiguración Passport.jsNextRetos 🦸🏻‍♀️🕵🏼‍♂️

Last updated 5 years ago

Was this helpful?

Express nos brinda la opción de agregar custom middleware a nuestras rutas para realizar otras validaciones.

En nuestro archivo index.js de la carpeta api/user agreguemos la ruta para obtener todos los usuarios.

api/user/index.js
const { Router } = require('express');

const controller = require('./user.controller');

const router = new Router();
// New Line
router.get('/', controller.index);
router.post('/', controller.create);

module.exports = router;

Si vamos luego a postman tendremos algo como esto:

Ahora si le agregamos el middleware isAuthenticated a esta nueva ruta, el código se vería así:

api/user/index.js
const { Router } = require('express');

const controller = require('./user.controller');
// New line
const auth = require('./../../auth/auth.service');

const router = new Router();
// Update line
router.get('/', auth.isAuthenticated(), controller.index);
router.post('/', controller.create);

module.exports = router;

Route

HTTP Verb

Route Middleware

Description

/api/users

GET

isAuthenticated

List all users

Si hacemos un llamado de nuevo a esta url sin pasar el postman veremos algo así:

Pero sí agregamos el token de autorización al llamado, la respuesta es diferente y afirmativa.

User list
401 unauthorized
User list with authorized