Angular Autenticación simple con Nodejs, Mongodb, Express y JWT (Parte 1/2)
HTML-код
- Опубликовано: 15 окт 2024
- Este es un ejemplo practico del Stack MEAN (Mongodb, Express, Angular, Nodejs), en el que crearemos una aplicación simple con autenticación.
Para esto usaremos conceptos como JsonWebToken, middlewares y Guards.
CÓDIGO
github.com/Faz...
CURSO DE ANGULAR
• Angular 6 Curso Practi...
CURSO DE MONGODB
• MongoDB Curso, Introdu...
CURSO DE NODEJS
• Nodejs Curso Desde Cer...
CURSO DE EXPRESS
• Expressjs | Nodejs Fra...
VARIABLES DE ENTORNO NODEJS
• Variables de Entorno e...
CURSO DE JAVASCRIPT
• Curso Javascript para ...
CURSO DE GIT
• Git y Github | Curso P...
VISUAL STUDIO CODE
• Visual Studio Code, Ed...
VISITA MI SITIO WEB PARA MAS CURSOS Y CONTENIDO
www.faztweb.com
blog.faztweb.com
FAZT - RUclips:
/ fazttech
TWITTER
/ fazttech
INSTAGRAM
/ fazttech
FACEBOOK
/ fazttech
DISCORD
/ discord
SLACK
join.slack.com...
#angular #nodejs #jwt
Buenas! El tutorial es de lo mejor que me he encontrado. Yo tengo estructurado un proyecto de manera algo distinta: las rutas llaman a un controlador de la siguiente manera:
router.get('/my-route', testController.metodo); //Por ejemplo
Sin embargo, el contenido del controlador devuelve un 404.
testController.metodo= verifyToken, (req, res) => {
res.send("test")
};
Pero si incluyo un res.send en verifyToken, este sí que devuelve el contenido del res.
Soy muy nuevo y no tengo claro cómo se usan, declaran, etc. funciones.
Muchas gracias :s
Gracias por el tutorial! Sumo un pedido para el mismo tutorial, pero para el stack MERN. 😁
Sumo mi voto para el stack MERN
Apoyo a este pedido 👍🏻
Si, me vendría muy bien este pedido. Saludos y gracias!
me incluyo
Igual, me apunto a este pedido
Hola fazt, primero que nada dar gracias por hacer un proyecto bien estructurado en tan poco tiempo, ser claro y fluido. Segundo para preguntar cuando harás un vídeo con un login mas robusto. muchas gracias
Seguí uno de tus videazos del MERN, en el cual el JWT lo mandas y recibes por cookies y así tengo mi backend. Pero, cómo podría hacer eso en Angular? obtener el token por cookies y reenviarlo. Saludos por cierto :3
tus videos me han ayudado más que toda la carrera.
Excelente tutorial Fazt, super entendible para conocer las bases del JWT con la API!!
Por lo menos por ahora podrías decirnos cuales cosas debemos de tener en cuenta para llevar a cabo uno mejor trabajado para producción?
Fazt, me gustaria que pudieras hacer un tuto de react-redux con conexiones a API con axios, y pudiendo almacenar un carrito para compras en el state. No hay nada en español que valga la pena, y para mi eres de los mejores explicando cada detalle y siguiendo el flujo. Gracias y un saludo.
Excelente Amigo, he aprendido mucho con tus vídeos. Quisiera ver si me puedes dar una guía de como poder hacer la conexión a mi base de datos siendo que yo desde mi frond le enviaría mis credenciales de conexión, suponiendo que cada usuario tiene diferente base de datos. ? no se si me pueden dar una idea de como hacerlo, te lo agradecería mucho.
Muy bueno el video! , tengo una duda con que deploy podria subir mi pagina? porque al tener dos carpetas que son el backend y frontend no se como subir las dos a la vez.
Gracias Fazt! Si pudieras hacer más de NestJS usando JWT
Por favor
x2
@@sundar392 x3
Muy bueno este video, estuve mirando varios , y este es el mas claro en el uso de jwt!
Hola, me gustaría saber que cosas se pueden mejorar en este login. A parte del hecho de que no encriptas las contraseñas. Saludos y gracias por el contenido
Justo lo que quería para implementar mi sitio web gracias Fazt !!!
¿La autenticación en las rutas es para que nadie externo acceda a las rutas?
Gracias, muy interesante el video.
Una pregunta: en 47:50 comentas que esta "es una validación bastante mala en realidad, pero con esto ya tienen para empezar". Qué fallos tiene o que le faltaría actualmente? Saludos!
Hola, por no utilizas MongoDB con un stack que no sea siempre el express y nodejs? no se, PHP, Java, etc. Quisiera ver que tan bien funciona mongodb integrandose con otros lenguajes del backend
Que maravilla estos videos.
Gracias genio !
Espero que sigas generando contenidos, quedé suscrita.
no man, sos lo máximo, justo lo que quería. Abrazos y mil gracias
Salude fazt desde nicaragua tus videos me han ayudado demasiado, te pido tambien que nos explique un poco el lenguaje en c
gracias, haces freelance?
Podrias crear un tutorial con NextJs Autenticación simple con Nodejs, Mongodb, Express y JWT; por favor
Tengo una duda, ¿es mejor validar las sesiones de usuarios con jwt o con los modulos passport / passport-local ? o se pueden usar las 2 formas ?
Hola estoy aprendiendo con tus videos a hacer aplicaciones, tengo un error en el subscribe en los componentes de signUp singIn. Me podrian ayudar con la linea de codigo si es que en las versiones actuales debo usar otra sintaxis. Muchas gracias!
Para agregar varias BD como debería ser? ojala me contestes XD
podrias hacer api REST combinada con WEBSOCKESTS ?(para produccion)
Hola tengo una pregunta, cuando verificamos la cabecera desde el método verifyToken en el min 42:22, por que no me resulta cuando ingreso un nombre de cabecera en mayúscula?, por ejemplo, al colocar Authorization, y enviar desde postman la cabecera Authorization, imprime "undefined", pero al hacer lo mismo con cualquier nombre en minúscula, si lo imprime. Muchas gracias!
Y si quiero usar MYSQL en vez de MongoBB?
Que debo de cambiar?
Hola Fazt! Muy bueno el tutorial. Este ejemplo lo tenes en github?
Gracias Fazt excelente video
Hola Bro, fijate que al querer hacer la validacion del inicio de sesion, me aparece un error acerca de la funcion asíncrona, lo cual me impide avanzar en esa parte, queria saber si me podrias ayudar
Puedes algún día hacer un juego(cualquiera) con web sockets en node
¿Puedes hacer lo mismo pero con MEVN además usando Roles y Permisos con JWT?, no he encontrado un tutorial que lo haga :(
Los roles y permisos van en el payload kpo, no es más q agregar un dato más de los q ya tienes
Como siempre muy bueno Fazt. No me quiero quejar pero yo me desearía que hicieras proyectos más complejos, por favor no me entiendas mal porque yo casi todo lo que se lo he aprendido aquí, pero a mi me parece como si repitieras siempre lo mismo. Solamente es una sugerencia pero que te parecería si hicieras un proyecto más grande y partirlo en 3 o 4 Videos. Un proyecto completo como por ejemplo con php(lavarel o Simphonie)
Este sistema de tokens para sesiones es valido para un stack mern?
justo lo que necesitaba !!!! Eres un crack Mr Fazt!
Necesitamos esto en react
Hola Buenas. Soy un chico de 19 años el cuál esta terminando de estudiar un ciclo superior del cual me queda una asignatura y de esa asignatura me queda un proyecto. Del proyecto me queda incorpora un Login. Me he visto el video de Login en angular 2123123 veces. Pero no se incorporarlo.
Os pido ayuda por si alguien me podria intentar meter tu el login sin base de datos.
Muchas gracias
Excelente aporte fazt gracias bro
req.body me devuelve un espacio vacio {} ¿sabes a que se debe?
Hello Farzt, tengo un error en el schema me dice que falta una ",".
Crack muchas gracias
fecha julio del 2020 minuto 45:15 cambiar const token=req.headers.authorization.split('')[1]; por
const authHeader = req.headers['authorization'];
const token = authHeader && authHeader.split(' ')[1];
no se quien seas pero eres un heroe, gracias
Que tema estas utilizando para los iconitos de Visual Code?
material icons
buen vídeo pero a su vez lo considero mal video nada de confianza todo el tiempo diciendo que muy básico ,existe la versión con un login con algo mas para produccion?
Thanks! 🤗 Pero Machine Learning para cuando? 🤓
sos el mejor bro!!! Thank you.
Eggscellent !!!!!!!!!!!!!!!!!
0:11 pedazo de gallo que se le salió, jaja pero es explicacion detallada y sin rodeos lo perdona todo
Yo quiero ver el perfil de cada usuario
Nice! oye bro tienes algo de microservicios en php?
Aun no, pero lo voy a apuntar para elaborar algo :)
@@FaztCode Gracias.
muy buen video!!
Muchas gracias!
JsonWebTokenError: invalid signature ayudenme con este error me sale ene minuto 46:21
lo solucionaste ?
A la fecha de 05/mayo/2020 esta funcionando de esta forma.
Para que se pueda verificar se debe generar la firma con el secretKey en un buffer, se usa la funcion Buffer.from() con los parametros del secret y tipo de codificación, en este caso es base64, al no expresarle esto cuando se crea la firma en el momento de verificar el token nos arroja ese error JsonWebTokenError: invalid signature.
github.com/auth0/node-jsonwebtoken/issues/151#issuecomment-273435783
aqui un ejemplo
router.post('/signup', async (req: Request, res: Response)=>{
const { email,password } = req.body;
const newUser = new User({email, password});
console.log(newUser);
await newUser.save();
const secret = Buffer.from('secretkey', 'base64');
const token = jwt.sign({_id: newUser._id}, secret);
res.status(200).json({token});
});
se usa la funcion Buffer.from() con los parametros del secret y tipo de codificación, luego se le pasa como parametro a jwt.verify(token,secretKey,callback).
const secret = Buffer.from('secretkey', 'base64');
const payload = jwt.verify(token, secret,(err, decoded) => {
if (err) {
console.log(jwt.decode(token));
console.log(err.name,":", err.message);
return (err) // this is where the error is thrown
} else {
return decoded;
}
});
req.userId = payload._id;
No me funcionó la linea: const payload = jwt.verify(token,'secretKey');
///////////////////////////////////////
La reemplacé por:
const payload = jwt.verify(token, 'secretKey', function(err, user) {
if (err) {
return res.status(401).send('Solicitud no autorizada');
} else {
req.userId=user.id;
next();
}
})
Espero le sirva a alguien
y de donde referencias el userId
@@alexaurio1000 Lo puedes ignorar
@@juanpablopeamansang856 me sale otro error amigo podrías explicarme mas
@@juanpablopeamansang856 me sale Solicitud no autorizada
30:49 Traficando rimas xD
La parte 2 ruclips.net/video/l_r9nRJ9YTk/видео.html