Hoy acabo el curso!!! Ya falta poco!
Http Basic
Conexión a REST APIs con Angular HTTP y buenas prácticas
Solicitudes GET en APIs con Angular: Obtener Productos
Consulta de Producto Específico en eCommerce con Angular
Integración de Swiper en Angular para Galería de Productos
Creación de Productos con POST y Data Transfer Objects en Angular
Actualización de Datos con Métodos PUT y PATCH en APIs
Eliminar productos con solicitudes DELETE en Angular
Paginación de Productos con Parámetros URL en Angular
Ventajas de los Observables sobre Promesas en Angular
Implementación de Retry con Observadores en Angular
Buenas prácticas
Solución de Problemas CORS en Aplicaciones Angular
Gestión de Ambientes en Angular: Desarrollo vs Producción
Manejo de Errores en Observables con Angular
Transformaciones de Datos en el Frontend con Map y Pipes
Evitando el Callback Hell con SwitchMap y ZIP en Observables
Auth
Autenticación con JWT: Implementación y Gestión de Sesiones en APIs
Autenticación y Manejo de Tokens en Peticiones HTTP
Implementación de Interceptores en Angular para Medir Tiempos de Respuesta
Interceptores en Angular: Agregar Token Automáticamente
Uso de Contextos para Interceptores en Angular
Archivos
Descarga de Archivos con HTTP Client en Angular
Subida de Archivos con HTTP y Angular paso a paso
Despedida
Consumo de APIs en Angular con HTTP y Autenticación
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Muchas aplicaciones hoy en día requieren de un Login para identificar al usuario y que pueda interactuar con la plataforma.
Veamos a continuación buenas prácticas para el manejo de sesiones con Angular.
Comencemos creando algunas interfaces para conocer y tipar la estructura de los datos.
// interfaces/user.interface.ts
export interface Credentials {
email: string;
password: string;
}
export interface Login {
access_token: string;
}
export interface User {
id: string;
email: string;
password: string;
name: string;
}
Hemos creado tres interfaces. *
Crea un simple servicio que manejará todo lo relacionado con inicios de sesión de los usuarios.
// services/auth.service.ts
import { Credentials, Login, User } from 'src/app/interfaces/user.interface';
@Injectable({
providedIn: 'root'
})
export class AuthService {
constructor(private http: HttpClient) { }
loginUser(credentials: Credentials): Observable<Login> {
return this.http.post<Login>(`https://example.com/api/login`, credentials);
}
}
Desde el componente que contiene el formulario de login, realizamos el inicio de sesión del usuario.
// components/login/login.components.ts
import { Component } from '@angular/core';
import { AuthService } from 'src/app/services/auth.service';
import { Credentials, Login, User } from 'src/app/interfaces/user.interface';
@Component({
selector: 'app-login',
templateUrl: './login.component.html',
styleUrls: ['./login.component.scss']
})
export class LoginComponent {
constructor(private auth: AuthService) { }
loginUser(): void {
const credentials: Credentials = {
email: '[email protected]',
password: '123456',
};
this.auth.loginUser(credentials)
.subscribe((res: Login) => {
localStorage.setItem('platzi_token', res.access_token);
});
}
}
En este ejemplo, efectuamos el login de un usuario con su email y password. El backend suele devolver el token de autenticación del usuario o un access_token. Lo guardamos en Local Storage o en el store que sea de tu preferencia.
NOTA: Existen diferentes tipos de Tokens para autenticar usuarios. Uno de los más comunes es Json Web Token o JWT.
Contribución creada por: Kevin Fiorentino.
Aportes 16
Preguntas 11
Hoy acabo el curso!!! Ya falta poco!
No se hace cuando salio este curso, pero me pregunto porque no lo tome antes es buenisimo, siento que todo programador no tan solo angular deberia tomarlo 🤩
Recuerden que si estan siguiendo el curso, deben inciar el server desde consola como
npm run start:proxy
ya que seguimos en hambiente de desarrollo y estamos utilizando proxy.
Recomiendo investigar el servicio de Autenticación de Firebase. Funciona con JWT y ya trae implementado todo lo necesario. Login, logout, validación de email, recuperar contraseña, etc. Además, es totalmente gratuito, puedes tener miles de usuarios y no pagar nada.
Ideal para proyectos que tienen que desarrollarse rápido y no hay tiempo, o ganas, de desarrollar todo un backend que administre usuarios.
Recuerden que a dia de hoy Marzo 2023 la URL Correcta es la del fakeStore de platzi.
Documentacion AQUi
La URL para el post seria esta “https://api.escuelajs.co/api/v1/auth/login”
Y adicional es importante que tengan en cuenta que cuando envien el BODY vaya en formato JSON si no les va a arrojar un error de 401
![](
Seria bueno notificar al usuario cuando se ha restructurado un curso y el usuario lo ha tomado.
Esta clase estuvo buenisimaaaaa!!!
les recomiendo que user Auth0 , es un sistema ya muy implementado y es gratuito hasta muchos usuarios. https://platzi.com/cursos/autenticacion-oauth/
Nico se volvio mi unica compañia, lo veo todo el dia
Ya obtuvimos el Token, ahora veamos como lo debemos enviar para autenticarnos en la API
Pense que hacer un login era complicado pero con esta clase es super sencillo 😃
También pueden usar la página oficial de JWT para mirar la información de los tokens 😄
Super la clase 😃
Genial justo acabo de hacer el API del login ahora me falta el frontend :3
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?