El curso definitivo de JWT [SingUp, inicia sesión y inicia sesión con MERN Stack ] | Code Bless You | Skillshare

Velocidad de reproducción


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

El curso definitivo de JWT [SingUp, inicia sesión y inicia sesión con MERN Stack ]

teacher avatar Code Bless You, Make Coding Easy To Learn

Ve esta clase y miles más

Obtenga acceso ilimitado a todas las clases
Clases enseñadas por líderes de la industria y profesionales activos
Los temas incluyen ilustración, diseño, fotografía y más

Ve esta clase y miles más

Obtenga acceso ilimitado a todas las clases
Clases enseñadas por líderes de la industria y profesionales activos
Los temas incluyen ilustración, diseño, fotografía y más

Lecciones en esta clase

    • 1.

      INTRODUCCIÓN

      0:55

    • 2.

      ¿Qué es JWT y por qué lo necesitamos?

      2:23

    • 3.

      Comenzar con Backend

      2:30

    • 4.

      Generación de token JWT en registro y inicio de sesión

      4:50

    • 5.

      Verificar el token en la ruta asegurada

      4:58

    • 6.

      Cómo empezar la autenticación de Frontend

      1:54

    • 7.

      Cómo guardar token en registro y iniciar sesión

      6:03

    • 8.

      Cómo obtener información de usuario de token

      3:45

    • 9.

      Cómo corregir el error de actualización

      1:24

    • 10.

      Implementación de la característica de cierre de sesión

      1:57

    • 11.

      Cómo hacer una solicitud de API segura con Token

      2:55

    • 12.

      Crear un componente de ruta privada

      2:15

    • 13.

      Cómo arreglar los pequeños errores

      2:12

  • --
  • Nivel principiante
  • Nivel intermedio
  • Nivel avanzado
  • Todos los niveles

Generado por la comunidad

El nivel se determina según la opinión de la mayoría de los estudiantes que han dejado reseñas en esta clase. La recomendación del profesor o de la profesora se muestra hasta que se recopilen al menos 5 reseñas de estudiantes.

225

Estudiantes

--

Proyectos

Acerca de esta clase

Aprende JWT (JSON WEB TOKEN) con el ejemplo de la vida real. Json Web Token es una de las habilidades importantes que cualquier desarrollador necesita porque es muy útil para la autenticación de usuarios en el mundo real. MERN la autenticación de stACK con JWT: ReactJS y NodeJS

En esta clase, te mostraré algunos de mis consejos y trucos que te ayudarán mucho y te destacarás en la multitud.

Temas que abordan en esta clase:

  • ¿Qué es JWT y por qué lo necesitamos?
  • Genera token en la suscripción y inicio de sesión
  • Explicar tokens en detalles
  • Verifica token en la solicitud de API segura
  • Cómo manejar el token en Frontend
  • Token de tienda en el navegador
  • Accede a la página de inicio de sesión
  • Ruta privada
  • Y mucho más

En esta clase, vamos a usar NODE JS como backend y React JS como Frontend. Así que este es más beneficio para los desarrolladores MERN STACK.

Enlace de código: https://drive.google.com/file/d/1KBYtrNfwhYHi-nD4G2CUZiHtnkPb6Ra8/view?usp=share

Conoce a tu profesor(a)

Teacher Profile Image

Code Bless You

Make Coding Easy To Learn

Profesor(a)

Hi! I'm a passionate software engineer from Code Bless You and I love to teach about coding and general skills in less time. I've taught many people how to become professional software engineers.

My goal is to make coding fun for everyone. That's why my courses are simple, animated, and with practical implementation.

Learn by doing

Step-by-step tutorials and project-based learning.

Get support

One-on-one support from experts that truly want to help you.

don’t stress. have fun.

I can't wait to see you in class!

- Code Bless You

Ver perfil completo

Habilidades relacionadas

Desarrollo Herramientas de desarrollo Node.js
Level: All Levels

Valoración de la clase

¿Se cumplieron las expectativas?
    ¡Superadas!
  • 0%
  • 0%
  • Un poco
  • 0%
  • No realmente
  • 0%

¿Por qué unirse a Skillshare?

Mira las galardonadas Skillshare Originals

Cada clase tiene lecciones cortas y proyectos prácticos

Tu membresía apoya a los profesores de Skillshare

Aprende desde cualquier lugar

Ve clases sobre la marcha con la aplicación de Skillshare. Progresa en línea o descarga las clases para verlas en el avión, el metro o donde sea que aprendas mejor.

Transcripciones

1. INTRODUCCIÓN: Bienvenido al último curso de JWT. En esta clase, vamos a aprender JWT en un lenguaje fácil y sencillo. Después de completar este curso, usted tiene una comprensión adecuada de JSON Web Tokens. Entonces, antes que nada, vamos a ver qué es JWT, por qué lo necesitamos. Después de eso, comenzaremos con la parte back-end de JWT, que es cómo generar tokens, cómo verificar tokens e implementar la API de seguridad solo para usuarios registrados. Después de eso, pasaremos a la parte front end en la que almacenamos Dogan en nuestro navegador. Implementando características de inicio de sesión y cierre de sesión, enviando token en el encabezado y creando componente para ruta privada. En la sección Proyecto, obtendrás todos los recursos para esta clase. Estoy muy emocionada por esta clase y espero que tú también lo estés. Empecemos. 2. ¿Qué es JWT y por qué lo necesitamos?: Así que JWT significa token web JSON, que se utiliza para transferir información de forma segura entre dos partes, como back-end y front-end. Pero la razón principal para usar JWT es autenticar al usuario con el uso de su token. Entendamos esto con el ejemplo. Aquí apenas hay un login con su información de cuenta, correo electrónico, y contraseña. Ahora nuestro servidor más j, la inflamación. Y si es cierto, entonces el servidor le devuelve el ID de usuario como respuesta y almacena eso en el ciudadano o cookie. Ahora cada vez que envía la solicitud alguna información segura, digamos toda su información bancaria. publicación del servidor se pidió el ID de usuario. Y si tiene ID de usuario, entonces y luego servidor envía la información segura. Pero aquí un gran problema, esta no es nuestra cookie en la que almacenamos nuestro ID de usuario. Se puede modificar fácilmente en el navegador. Digamos que acabo de cambiar este ID de usuario por otro ID de usuario. Después obtenemos la información sobre ese usuario. Por lo que este enfoque no está asegurado. Ahora para resolver este problema, presentamos el token web JSON. Ahora apenas vuelve a iniciar sesión con su correo electrónico y contraseña. Ahora nuestro servidor se hizo una pausa para comprobar la inflamación. Y si es cierto, entonces el servidor devuelve el token único cifrado y lo almacena en el almacenamiento local. Ahora lo bueno de este token es que está hecho con detalles de usuario y una clave secreta que definimos en el servidor. Así que cada vez que apenas envía una solicitud a la política de información actual, entonces la publicación del servidor solicitó el token JWT, verifíquelo usando nuestra clave secreta. Si se verifica, entonces y después el servicio y esa información del buscador. Y si cambiamos algo en información del usuario que nuestro token cambiará. Entonces es por eso que usamos JWT, autenticación de usuarios. Sé que tienes muchas preguntas relacionadas con el token web JSON, pero mira este tutorial completo, despejará tus dudas. En este tutorial, voy a usar NodeJS como backend y React JS para el front end. Pero aún puedes seguir estos sin importar el lenguaje de programación que uses. 3. Comenzar con Backend: Aquí creo un proyecto sencillo en Node.JS en el cual post conecto este servidor de nodos con mi base de datos localhost MongoDB y escucho este servidor en localhost por mil. Por cierto, también puedes descargar el código de inicio. Primero instalemos todas las dependencias para este proyecto. Así que abre terminal y escribe npm instalar. Déjalo correr en segundo plano. Ahora en la carpeta models, creé un usuario modelo con solo tres píldoras, nombre, correo electrónico y contraseña. Ahora en la carpeta de ruta, defino todas las rutas. El recorrido del autobús es para el registro de usuarios en este archivo users.js. Entonces aquí, primero obtenemos todos los datos del cuerpo del punto de solicitud y lo deestructuramos. Después comprobamos si hay usuario existente. Y después de eso, vamos a guardar la información del usuario en la base de datos y la información del usuario de Sandy ya que responde ruta bastante simple. Entonces en el archivo server.js, importo este usuario hacia fuera y defino este pad de ruta como API menos usuario. Así que abre diez minuto y escribe servidor Norman. Esto actualizará continuamente el servidor en Jane's. Genial, conseguimos la base de datos conectada. Entonces vamos a probar es con Cartero. Ahora paso nuestra ruta aquí y selecciono fila y Jason. Ahora aquí paso objeto de datos y da click en Enviar y vemos que obtenemos datos de usuario. Ahora, si B vuelve a dar clic en el botón Enviar, entonces obtenemos usuario ya existe. Entonces esa es la pequeña introducción para quién está viendo el tiempo de pausa del nodo solo para entender. Del mismo modo, tenemos otra ruta llamada odd para login. Déjame mostrarte directamente en Cartero. Por lo que paso correo y contraseña correctos. A continuación, haga clic en Enviar. ver, obtenemos usuario actual. Pero si pasamos contraseña incorrecta, entonces obtenemos error. Ahora hay tres tareas principales para JWT en back-end. Vigilado. Uno es generar token en el registro. Segundo, Generar token al iniciar sesión. Y por último, cuando el usuario pide información de seguridad, tenemos que verificar token. Comencemos con la tarea número uno. 4. Generación de token JWT en registro y inicio de sesión: Así que abre terminal y agrega nueva terminal y escribe npm I, JSON Web Token y pulsa Enter. Ahora usuario fuera. En la parte superior declaro JWT es igual a dos token web requerido y decente. Ahora después de almacenar los datos en el registro, razona el Token JWT o el signo de punto JWT. Ahora primer argumento son nuestros datos que queremos pasar con este token. Así que creo una nueva variable llamada datos JWT porque para subrayar ID usuario punto subrayado id nombre coma, user.name. Ahora pasa aquí estos datos de JWT. Ahora el segundo parámetro es nuestra clave secreta JWT. Por lo que podemos pasar aquí cualquier cadena como código te bendiga, o lo que sea. Esta clave secreta es muy importante para la autenticación. En este caso, no está asegurado. Por lo que declararemos nuestra clave secreta en el archivo punto ENV aquí mismo. Jwt secret equivale a algo así como 123 code blast o algo que no adivinará fácilmente. Al igual que si estás creando la app Zomato, clave secreta es como Zwicky es la mejor. Ahora guárdalo y vuelve a nuestra ruta de usuario. Por aquí agregamos punto procesado ENV, secreto de JWT. Con este punto de proceso ENV, podemos acceder a la variable de este archivo ENV. Ahora, si quieres caducar token en algún tiempo, entonces también podemos definir eso. Por lo que quiero caducar este token en horas. Entonces, si un usuario compra este token después de dos horas, ellos cómo iniciar sesión de nuevo para nuevo token, ¿verdad? En objeto caduca en y entre comillas dobles. Se puede escribir el tiempo. Si quieres exportarlo en un día, entonces pasa 1D. Pero paso aquí a mojado o dos horas. Nuevamente decirte esto es opcional. Ahora almacene esto en una variable llamada token en la respuesta, envíe token, guarde los cambios. Ahora en carteros, creamos un nuevo código de usuario para leer gmail.com y dar clic en Enviar. Ves, obtenemos este token encriptado. Ahora copia este token y encabezado a Jwt.io. Este es el sitio oficial de JWT. Puedes leer aquí su documentación. Ahora da clic en este depurador. Sí, podemos decodificar nuestro token. Ahora vamos a entender lo que dentro este token basó nuestro token aquí. Ahora, todas las fichas divididas en tres partes. La primera parte es sobre cabecera, que está en color rojo. La segunda parte trata de la carga útil, que está en morado. Y la última y más importante parte es la firma, que es en color azul. Ahora este encabezado contiene el algoritmo y el tipo token, lo cual es muy común. No te enfoques en eso. Ahoraesta carga útil contiene los datos a los que queremos pasar este token. En nuestro caso, pasamos identificación y nombre. ver, aquí obtenemos nuestros datos. que podamos mostrar esos datos en nuestro front-end sin solicitudes de nueva API. Y tenemos más datos, lo que significa emitido en el valor es el momento en que nuestro token generado. Y EXP es nuestro tiempo de exploración. Ahora la última parte, firma, que se genera en base a nuestro encabezado, esta carga de datos y clave secreta, que sólo está disponible en el servidor. Por lo que esto evitará que los usuarios obtengan su propio Dogan y luego lo modifiquen con ID para pretender ser otra persona. Porque si modificas algo en esta carga útil o encabezado, entonces la firma lo regenerará. No hay posibilidad de que el usuario haga algo poco ético. Entonces por eso JWT es tan popular. Por lo que creamos con éxito nuestro registro JSON Web Token Board. Ahora hagamos lo mismo para iniciar sesión. Así que copia estas tres líneas y ve al archivo ahd dot js y pega aquí. Y en la parte superior, redeclare JWT es igual a requerir JSON Web Token y guardarlo. Ahora en login, paso alto corrige los datos y envíalo. ver, obtenemos token. Completamos con éxito o segunda tarea o backend. 5. Verificar el token en la ruta asegurada: Ahora la última tarea, que es sedes o solicitar ruta asegurada, lo que significa que los datos sólo son accesibles para los usuarios conectados. Entonces tenemos que hacer una pausa para verificar el JSON Web Token. Y si es válido, entonces devolvemos datos. Por lo que en el archivo users.js, agregamos nueva API, obteniendo la información actual del usuario registrado , que se mostrará en el palpado del sujetador. Así que el punto correcto del router obtiene la ruta Les Paul y agrega una función con la respuesta de la solicitud. Ahora, necesitamos crear nuestro middleware en el que verificamos token en cada ruta segura. Así que crea una nueva carpeta llamada middleware. Y dentro de ella, creamos un nuevo archivo llamado ab.js. Genial. Ahora aquí primero definimos la función y añadimos module.export o exportamos esta función. Ahora podrías saber que nuestra función middleware tiene tres parámetros, request, response y el siguiente. Ahora, no nos preocupemos por esto. Ahora dentro de esto, primero pasamos el token que se pasa por cabecera. Por lo tanto, solicite cabecera y pase aquí el nombre del encabezado, paso x o token, que se usa comúnmente nombre. Puedes pasar lo que quieras para almacenar esto en la variable token. Después de eso, comprobaremos si el token no está disponible. A continuación, devuelve el estado de puntos de respuesta para 01, Dotson, y bajo, acceso denegado. Dogan no encontrado. Y si token está disponible, entonces lo verificamos. Entonces, en la parte superior, redeclare JWT equivale a requerir token web JSON. Ahora aquí escribimos JWT dot verifica. Ahora el primer parámetro es nuestro token, que queremos verificar. El segundo parámetro es nuestra clave secreta JWT. Así que a la derecha, punto de proceso ENV, secreto JWT. Ahora esto nos dará id y nombre, que pasamos antes. Así que vamos a almacenar esto en el usuario variable, y pasamos que los valores en solicitud de usuario punto es igual a usuario. Después de eso, llamaremos a la siguiente función. Por lo que ejecutará la API. Ahora bien, si este token es válido, entonces este código nos dará error. Soviético tratar de atrapar bloque para eso. Ahora, mueve esto dentro intenta bloquear. Ahora en este bloque catch, escribimos estado de punto de respuesta, 400. Los puntos envían token no válido y lo guardan. Ahora de vuelta a la ruta users.js. Y primero importamos impar. Así que escribe const impar es igual a dos, requiere middleware de barra de doble punto, menos impar. Ahora pasamos este extraño middleware aquí. Entonces cuando alguien llamó a esta API, este middleware extraño se ejecutará. Y si se verifica token, entonces, y luego se ejecutará esta función. Ahora de inmediato IT User dot encontrar por ID y solicitud de contraseña punto usuario punto subrayado ID, que declaramos en otoño middleware, y lo almacenamos en una variable llamada perfil. Después puntos de respuesta y perfil. Aquí le agregamos un peso. Por lo tanto, tenemos que escribir aquí asíncrono, Guárdalo. Ahora probemos esta API privada. Así que de nuevo a Postman y añadir nueva solicitud y pasar aquí http colon doble barra local host, colon Python slash api slash usuario, y haga clic en Enviar. ver, obtenemos el mensaje de error de acceso denegado porque no hemos pasado token en encabezado. Así que ve a la sección de Encabezado. Y aquí está x odd token, que pasamos en middleware otoñal. Y aquí pasamos nuestra ficha. Entonces copio este token de login, gusto y lo pego aquí. Ahora da clic en enviar y obtenemos el perfil de usuario. Ahora, si cambiamos algo en este token y lo enviamos, entonces obtendremos token inválido. Por lo que nuestra parte de back-end se completa aquí. Minimizar este servidor vía score porque necesitamos seguir ejecutando este servidor. Ahora veremos cómo manejar JWT en React. 6. Cómo empezar la autenticación de Frontend: Entonces aquí abrí la carpeta del cliente en otro Código VS. En primer lugar, instalaremos todas las dependencias. Así que abre y escribe npm install y deja que se ejecute en segundo plano. Permítanme darles una visión general rápida de esta aplicación React. Entonces en este componente de app, creo una barra ahora, y dentro del caracol malo, creo tres enlaces ahora. Y para el enrutamiento, creo este componente de enrutamiento en el que defino todas las rutas como home, login y register, simple como eso. Vamos a ejecutar esta aplicación. Así que abre un terminal y escribe npm start y pulsa Enter C. Este es nuestro componente home. Después de eso, tenemos formulario de inicio de sesión en la página de inicio de sesión. Entonces si escribimos correo electrónico y contraseña y luego enviamos el formulario, obtenemos valores en consola. Similar a esto, contamos con formulario de registro. Llenamos el formulario y damos clic en el botón Registrarse. Entonces obtenemos valores en consola, así sucesivamente, JWT, cuando usas una resistencia, enviamos token desde el back-end, ¿verdad? Entonces, después de eso, almacenamos ese token en el almacenamiento local del navegador y pasamos ese token cuando hacemos cualquier solicitud API segura. En nuestro ejemplo, nuestra API de perfil. Tan similar al backend, tenemos tres tareas para front-end. El primero es que almacenamos token en resistor. En segundo lugar almacenamos token en Login. Y por último, dijimos token a nuestro encabezado. Para que podamos hacer solicitud API segura. 7. Cómo guardar token en registro y iniciar sesión: Así que abre terminal y agrega nueva terminal y escribe npm I SEOs y pulsa Enter. Si no conoces a los SCO, tu inyecta mi video guía de XES. Ahora creo una nueva carpeta llamada utils para utilidades y creo un nuevo archivo con el nombre STDP ab.js. Ahora en este archivo, en primer lugar, importo de ceros. Y después de eso, creo una variable llamada instancia es igual a XES dot create. Ahora pasa objeto y dentro de él, reescribe la URL base. Aquí. Podemos pasar nuestra URL base backend, que es http colon doble slash host local colon por mil menos API. Y al final, exportar instancia predeterminada. Así que básicamente creamos un atajo para hacer solicitud API. Por lo que no necesitamos escribir cada vez URL completa. Si hacemos request o localhost colon pi mil slash api slash user, entonces tenemos que simplemente escribir slash user. Ahora ve al registro de carpeta de componentes y abre este archivo de registro dot js. Por lo que este es un formulario de inscripción. Ahora en la función submit, llamaremos a nuestra API de registro. Entonces en la parte superior, primero importamos STDP desde, vamos a tenedores arriba y sumamos detalles como PIB. Ahora me quito esta consola de aquí mismo, http dot post. Ahora el primer parámetro es la ruta de nuestra API, que es menos usuario. Y el segundo parámetro son los detalles del usuario. Ahora esta declaración devuelve una promesa. Manejemos esto con espera asíncrona. Escribo aquí de ocho, y aquí pasamos AC. Ahora vamos a almacenar este valor en una variable llamada respuesta. Y consolar esta respuesta, guarda los cambios y echa un vistazo, ve a resistencias y pega y llena los datos con un correo electrónico único. Y da clic en el botón Registrar. ver, obtenemos este objeto de respuesta. Entonces en estos datos, obtenemos nuestro token. Distraigamos esta respuesta y obtengamos esta propiedad de datos. Ahora, hagamos nuestro token en nuestro almacén local. Por lo que nuestro navegador tiene su propio almacenamiento pequeño. Por lo que escribimos almacenamiento local, punto set item. Ahora la variable post es el nombre de este campo, que es token. Y segundo, pasamos datos, que es token real. Y después de eso, trasladaremos usuario a la página principal. Para la navegación. Usamos el router React dom. En la parte superior. Yo uso importante navega desde React router dom, termina aquí mismo. Deje navegar es igual a utilizar navegar. Y después de esto, escribimos navegar. Y dentro de ella, pasamos nuestro camino, que es menos asistentes de ventas, y echar un vistazo. Ahora pasa un e-mail diferente y da clic en el botón Registrarse. A ver redirigimos a la página principal. Déjame mostrarte dónde almacenamos nuestro token. Así que ve al panel de aplicaciones por aquí. Ahora haz clic en historias locales y selecciona tu URL web. Ver, restauró nuestra ficha aquí. Ahora vuelve a registros y palma y compra los mismos datos y da click en Registrarse. En consola, obtenemos error. Así que volvamos a nuestra aplicación React. Y añadimos bloque try-catch para manejar esta discordia de modo de error en este bloque try, enganche block. Simplemente consolaremos esta época, guardaremos los cambios, y echaremos un vistazo. Haga clic en el botón Registrar. ver, obtenemos el objeto sumador. Ahora en esta respuesta de error, obtenemos nuestros datos, que enviamos desde el usuario back-end ya existe. Entonces escribimos aquí si sumador punto respuesta está disponible y luego sumador punto response.status es igual a 400. A continuación, establezca el error, sumador punto response.data, que es nuestra variable de estado. Porque no queremos mostrar ninguna otra sumadora que no enviamos desde backend. Y en la parte inferior, ya agrego la condición, que es si sumador está disponible, luego imprimo ese error, cambia y echa un vistazo. Ahora hago clic en este botón Registrarse y obtenemos esta era ahora similar a nuestra página de inicio de sesión. Así que copio este try and catch block y abro login dot js page. Y en la función de enviar mango, péguela. Ahora copia esto a las importaciones y pégalo en el componente de inicio de sesión. Ahora copia esta última línea de navegación y pégala. Por lo que ahora aquí cambiamos la ruta de usuario, hacemos impar y compra este formulario de datos, que también es detalles del usuario. Los asistentes, y echar un vistazo. Ahora llena este formulario con la información incorrecta y vemos que obtenemos nuestra sumadora ahora más allá de la información correcta. Y z realmente directo al componente casero. Y también puedes revisar tokens almacenados en el almacenamiento local. 8. Cómo obtener información de usuario de token: Ahora no quiero mostrar este login y enlace de registro si un usuario ya está conectado. Así que de vuelta a Add Component, creamos una variable de estado llamada user y valor inicial a null. Y en la parte superior, import lo usó desde React. Ahora la lógica es cuando la fecha de estos usuarios es nula, lo que significa que el usuario no está conectado. El usuario está disponible, luego el usuario inicia sesión. La pregunta es, cómo podemos obtener los datos actuales del usuario. Recuerda, pasamos nuestros datos de usuario a nuestra sección de carga útil de JWT. Entonces usamos esos datos aquí para autenticarse. Ahora añadimos aquí condición. Si en el almacenamiento local tenemos token, entonces obtenemos datos del token, ¿verdad? Si el token de punto de almacenamiento local está disponible, cambie el estado del usuario. Ahora cómo podemos decodificar nuestro token y obtener esos datos para que tengamos una biblioteca llamada decodificación JWT. Así que abre terminal y escribe npm I JWT dash d code y presiona Enter y cierra este terminal. Ahora aquí importamos decodificación JWT de JWT decor. Ahora dentro de este IV, obtenemos el primer token del almacenamiento local, punto get item y token. Y ahora usamos decoración JWT. Y dentro de esto, pasamos este token JWT. Ahora almacene esto en usuario de registro variable y establezca usuario para registrar usuario. Ahora, vamos a consolar esta variable de estado de usuario. Guarda los cambios, y echa un vistazo y obtenemos error, que se debe a bucle infinito. Déjame explicarte aquí. Primero, comprobamos si hay token y dijimos datos de usuario a esta variable de usuario, que crea en bucle finito. Por lo que tenemos que mover este código fuera de este componente de aplicación. Ahora elimine esta función de usuario establecida y dirija la ruta este valor de usuario de registro como valor inicial. Ahora antes de esta condición if, redefinir esta variable de usuario de registro porque si token no está disponible, entonces no podemos acceder a este log es una variable y eliminar esta constante también. Ahora guarda los cambios y echa un vistazo. ver, obtenemos nuestros datos de usuario. Ahora usando esta variable de usuario, mostraremos enlaces privados y días de altura de inicio de sesión y enlace de registro. Tan pasado este usuario como indicaciones en este componente Navbar. Ahora en ahora por componente, estructura 3D apoyos y obtener variable de usuario. Ahora hemos agarrado estos dos enlaces de navegación con condición, que es si el usuario no está disponible, entonces por lo que este enlaces. Ahora tenemos que pasar por aquí, reaccionar embarazada. Y después de eso, si un usuario está disponible, mostraremos dos enlaces más, perfil y cierre sesión. Por lo que duplico este bloque y la condición de Jane y post link por perfil. Y segundo para los cambios de cierre de sesión y echa un vistazo. Mira, obtenemos nuestro perfil y enlaces de cierre de sesión. Ahora vaya al panel Aplicación y seleccione este token y retírelo. Qué propósito de degustación. Ahora actualiza la página. Obtenemos enlaces de inicio de sesión y registro. 9. Cómo corregir el error de actualización: En este momento, crees que nuestra aplicación está funcionando bien, pero aquí tenemos bug. Déjame mostrarte. Así que abra el formulario de inicio de sesión y el correo electrónico y la contraseña correctos. Ahora haga clic en este botón de inicio de sesión. Ahora para presionar el almacenamiento local C, obtenemos nuestro token. Pero estos vínculos siguen siendo visibles. Porque en el componente app, esta condición si solo se ejecuta una vez. Entonces si refrescamos manualmente la página, entonces obtenemos otros enlaces. Por lo que después de iniciar sesión, tenemos que refrescar automáticamente la página. Es muy sencillo. Así que de vuelta a nuestro componente de inicio de sesión. Y el estado de ánimo es navegar un anuncio aquí, la ubicación del punto de la ventana es igual a. Ahora elimina esta navegación usada. Y también eliminar de importante, guarde esto y copie esta ventana.ubicación y pegada en el componente de registro. Se usa un modo. Navegar y también eliminar, guardar los cambios y echar un vistazo. Ahora de nuevo, token remoto y refrescar la página. Ahora filtra correo electrónico y contraseña. A continuación, haga clic en Iniciar sesión. A ver obtenemos nuestros enlaces sin refrescar manualmente. Perfecto. 10. Implementación de la característica de cierre de sesión: Ahora vamos a crear componentes. Lo que estas dos páginas en carpeta de componentes. Creo una nueva carpeta llamada profile, y dentro de ella creo un nuevo archivo, profile dot js. Ahora escribe AFC, React repetitivo, y paso aquí H1. Este es componente de perfil. Guárdalo. Y vamos a crear una nueva carpeta llamada logout. Y dentro de él, crear un nuevo archivo, cerrar sesión dot js. Y de nuevo, escribe nuestra boilerplate de la AFC y guarda esto. Ahora ve al archivo routing dot js. Aquí definimos nuestras rutas. Entonces duplica estas dos líneas y genes pero para perfilar y elemento también perfilar. Y para segunda ruta, cambiamos malo para cerrar sesión. Un elemento también cerrar sesión los cambios y echar un vistazo. ver, conseguimos nuestras rutas. Ahora, primero completemos la función de cerrar sesión. Así que abre el archivo logout dot js. Por lo tanto, cerrar sesión es básicamente eliminar el token del almacenamiento local. Eso es todo. Entonces importé efecto de uso de React. Y aquí creo, uso la función de flecha hacia atrás y matriz vacía porque sólo queremos ejecutar esta vez. Ahora dentro de esto usando almacenamiento local, dot remove item, token. Y después de eso, vamos a redirigir a la base. Entonces a la derecha, la ubicación del punto de ventana es igual a 2s Vamos a guardarlo y echar un vistazo. Ahora haga clic en cerrar sesión y vea que hemos desconectado con éxito. Ahora vamos a iniciar sesión de nuevo. Y mira, funciona bien. 11. Cómo hacer una solicitud de API segura con Token: Ahora en esta página de perfil, queremos mostrar la información del usuario que tenemos solicitud GET usuario. Vamos a abrir el archivo de perfil dot js. Y primero importamos el efecto de uso. Y después de eso, importamos STDP de Vigo a Fuller's up utils menos STDP. Ahora en componente, declaramos una función llamada get user profile, arrow function. Y dentro de ella, parcheamos datos, ¿verdad? Http punto obtener slash usuario. Ahora agreguemos un peso. Y para eso hay que añadir un C. Genial. Ahora vamos a almacenar esto en variable llamada respuesta y consultar la respuesta. Ahora vamos a crear un objeto de usuario. Y dentro de ella llamamos a esta función. Guarde los cambios y el color. Ir a la página de perfil y ver que obtenemos error, que es Unauthorized debido a nuestro middleware impar, que fueron declarados en backend. Sólo ese usuario puede acceder a esta información que envía token en encabezado. Entonces vamos a resolver este tema. Entonces para eso, creamos nuevo archivo en tus cuentos llamado set o token dot js. Ahora crea una función llamada set o token. Y bares aquí, token. Ahora dentro de él, escribimos si Dogan está disponible, entonces pasamos este token en encabezado mediante el uso de x. uso. Tan importante desde nuestra pila STDP, este es un paso muy importante. Aquí mismo. X es igual a punto por defecto encabezado punto punto común. En corchete. Pasamos nuestro nombre de cabecera, que es x, o token, que establecemos en nuestro back-end, es igual a token. Ahora en as, lee, escribe, elimina, y luego copia y pega este comando. Y vamos a exportar por defecto, set o token. Ahora vamos a llamar a este componente de aplicación de función. Hasta ahora conjunto más importante o token de utils, menos octágono conjunto. Ahora, después de almacenar este token en token JWT y pasar nuestro token, que es JWT. Guarde los cambios y actualice la página de perfil. A ver obtenemos datos de perfil. Entonces así es como puedes pasar token en encabezado. Ahora no necesitas escribir encabezado para todas las solicitudes. Este conjunto o token hará eso por ti. 12. Crear un componente de ruta privada: Ahora vamos a llevar más adelante esta aplicación. Porque aquí encontré un bicho. Así que vamos a cerrar sesión y en la URL, añadir perfil de slash y presionar Enter. Ver. Aquí obtenemos el componente de perfil que solo es accesible por usuario autenticado. A pesar de que pueden obtener cualquier dato debido a nuestra API de seguridad, pero no es una buena práctica. Entonces si usuario sin login, lo hago, entro en el espacio. Redirigiremos al usuario a la página de inicio de sesión. Así que vamos a crear un nuevo archivo en la carpeta dudosa llamada ruta privada. Ahora bien, RFC quad repetitivo y reescrito aquí. Si el usuario está disponible, salida ventral, que nos ayudará a mostrar un componente infantil. Te lo mostraré en tan sólo un segundo. Si el usuario no está disponible, entonces navegue para slash login. Asegúrese de importar outlet y navegar desde React router dom. Obtenemos usuario de utilería. Así que de vuelta al componente App. Y en este componente de enrutamiento, pasamos igual de usuario a usuario. Y en el componente de enrutamiento, estructura 3D de usuario. Ahora en el router React versión seis, podemos definir rutas privadas muy fácilmente. Esta ruta privada no es más que una función que redirigirá al usuario si no han iniciado sesión. Así que ruta correcta y no pase ruta directamente elemento y pase aquí componente de ruta privada con usuario igual a usuario y ruta más cercana. Ahora, entre esta ruta, podemos pasar todas nuestras rutas privadas. Entonces vamos a mover este perfil y cerrar sesión lechada. Entonces esto básicamente significa que cada vez que alguien intentó enrutar cualquiera de estas rutas, entonces estas función de ruta privada correrán post, guardarán los cambios, y echarán un vistazo. Ver, nos movemos directamente a la página de inicio de sesión. 13. Cómo arreglar los pequeños errores: Ahora ingresa con tu información en los tipos de URL menos login y pulsa Enter. ver, obtenemos este formulario de inicio de sesión. Entonces vamos a arreglar esto muy rápido. Aquí. ¿ Quién compra este componente de inicio de sesión de usuario? Ahora abre este componente de inicio de sesión y destructor props usuario. Después de eso, escribimos aquí usar efecto y función de error con una matriz vacía. Y dentro de esto, comprobamos si el usuario está disponible. Después enviamos al usuario un paso atrás. Vamos a importar usuario de React y el uso importante navegue desde React, router dom. Y después de que declares, agregamos lead navigate equals para usar navigate. Ahora mismo aquí, navega y pasa menos uno, lo que significa un paso atrás. Funciona como botón Atrás en el navegador. Si escribimos menos dos, entonces irá dos pasos atrás. Guarda esto, y echa un vistazo. Ahora teclea aquí, es menos iniciar sesión y entrar. ver, redirigimos a la página principal. Ahora copiemos esto desde el archivo de inicio de sesión dot js y peguémoslo dentro del componente de registro. Ahora vuelve a copiar estas líneas de entrada y pegarla en la parte superior. Ahora vuelve al componente de enrutamiento y pasa igual a usuario. Mientras que este tercer componente y en el componente de registro, usuario de la estructura 3D en cae los cambios y echa un vistazo. ver, cuando intentamos golpear la página Registrar, redirigimos un paso atrás. Así que felicidades, has creado con éxito la autenticación de usuarios usando JWT, que es la forma más utilizada para aplicaciones de usuario auténticas. Espero que aprendas mucho de este tutorial. Si tienes algunas dudas, me lo vas a preguntar en el apartado de comentarios. Nos vemos en el siguiente video. tengas un buen día.