Crear un simple API para poner en práctica lo aprendido sobre autenticación.
"Set up" express. Crea tu proyecto express en api/
Crear la ruta GET /patata que devuelva el JSON:
{ "patata": "muy buena" }
Crear un modelo de usuario con los campos:
- password
Crear la ruta POST /users para crear un usuario
- devuelve 201 OK si usuario creado OK
- devuelve 400 si errores en la creación.
- la password debe guardarse cifrada!
Crear la ruta POST /login para autenticar un usuario. Recibe { email, password} en el body y devuelve una Cookie de sesión.
Sólo usuarios autenticados podrán acceder a /patata
Modificar la ruta GET /patata para que devuelva:
{ "patata": "muy buena": "usuario": "EMAIL DEL USUARIO AUTENTICADO" }
Crear la experiencia web de login y acceso autenticado
Crear proyecto vite en ./web
Instalar react-router-dom
y crear tres rutas en la web:
- /patata -> renderiza PatataPage
- /signup -> renderiza SignUpPage
- /login -> renderiza LoginPage
Registro. El componente SignUpPage debe renderizar un formulario de registro. Al enviarlo debe crearse un usuario en el API
Login. El componente SignUpPage debe renderizar un formulario de login. Al enviarlo debe logarse y recibir la cookie de sesión
Patata. El componente PatataPage debe mostrar la respuesta del API en GET /patata
Añadir useCredentials: true
en axios para que se envien las cookies inter-dominio.
Añadir la configuración de CORS con credentials: true
para soportar cookies en cors