@alu0100943849/auth
v1.0.1
Published
Ejemplo de modulo de autenticacion
Downloads
6
Readme
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