1.0.1 • Published 6 years ago

@alu0100943849/auth v1.0.1

Weekly downloads
-
License
ISC
Repository
github
Last release
6 years ago

p8-t3-sessions-and-modules

Crear el modulo auth en Node.js

Para ello necesitamos el modulo router de espress, el bcrypy para encriptar la contraseña.

Para manejar las peticiones get y post del usuario, el módulo provee rutas y manejadores para el login, el registro y el logout así como para acceder al contenido protegido.

Para definir una rutas o manejador utilizamos la clase express.Router(), que deriva de los metodos de solicitud HTTP por ello las rutas se pueden especificar como router.get(...) o router.post(...), por ejemplo.

router.get('/login', (req, res) => {
    ...
});

router.post('/register', (req, res) => {
    ...
});

en el caso de router.use(...) se utiliza para definir el middleware especifico para ese router

¿Cómo funciona?

Cuando se carga el archivo que contiene el HTML de la página, el usuario puede clicar links que tienen un atributo href que tiene como valor la ruta a la que se quiere ir, por ejemplo: /login, esto es enviado mediante los métodos de solicitud HTTP (get, post, etc), los cuales son capturados por los manejadores que ejecutan lo declarado en sus funciones, por ejemplo:

router.get('/login', (req, res) => {
  if(!req.session.username) res.render(loginView);
  else res.render(successLoginView);
});

cuando se clica en login en la pagina web, esta envia una peticion get, que es capturada por el manejador de arriba, que maneja las solicitudes GET a la vía de acceso /login, y ejecuta el codigo renderizando un fichero .ejs dependiendo de la sentencia if else.

Subir el modulo a la biblioteca npm

  • 1º Tu proyecto debe tener un archivo package.json en el directorio raíz. sino ejecuta npm init

  • 2º crea una cuenta en npmjs.com.

  • 3ºpublicar el proyecto, ejecuta: npm login y despues npm publish