1
00:00:00,690 --> 00:00:05,760
Bienvenido de nuevo a esta lección, retomaremos donde lo dejamos con el código de autenticación y vamos

2
00:00:05,920 --> 00:00:08,370
a agregar la funcionalidad de inicio de sesión.

3
00:00:08,550 --> 00:00:14,130
Entonces, eso significa que debe agregar que para iniciar sesión, las rutas que son para el formulario representan el formulario y

4
00:00:14,130 --> 00:00:16,700
el otro que realmente hace el log en lógica.

5
00:00:17,100 --> 00:00:20,210
Y luego realmente necesitamos crear el formulario y luego lo probaremos.

6
00:00:20,220 --> 00:00:22,250
Así que comencemos adentro.

7
00:00:22,480 --> 00:00:26,420
Sí, vamos a agregar dos rutas y esas dos rutas nuevamente.

8
00:00:26,460 --> 00:00:29,310
Una es la solicitud GET y una es una solicitud POST.

9
00:00:29,310 --> 00:00:33,320
Ambos serán diagramas de inicio de sesión al igual que lo hicimos para registrarse.

10
00:00:33,870 --> 00:00:37,470
Comencemos con el formulario y voy a hacer otra nota aquí.

11
00:00:37,470 --> 00:00:45,150
Éstas se registrarán en las rutas y la primera solo va a generar el formulario de inicio

12
00:00:45,180 --> 00:00:57,030
de sesión y esa es agradable y fácil de no recibir respuesta de solicitud de inicio de sesión de barra y vuelven a llamar y haremos un

13
00:00:57,840 --> 00:01:00,050
registro de renderizado en rez.

14
00:01:00,060 --> 00:01:01,630
Ahora, creemos esa forma.

15
00:01:01,680 --> 00:01:10,870
Así que toque usar el inicio de sesión de barra de corte Ejay us y luego abra ese registro de barras de vistas vistas que E. J. Sí.

16
00:01:11,100 --> 00:01:11,850
Estupendo.

17
00:01:11,970 --> 00:01:18,300
Y agregaremos un buen H-1 que diga iniciar sesión y asegurémonos de que veamos esto cuando

18
00:01:18,300 --> 00:01:19,540
iniciemos la aplicación.

19
00:01:20,460 --> 00:01:26,470
Vayamos a nuestra aplicación y vayamos a cortar el inicio de sesión y recibir la plantilla.

20
00:01:26,680 --> 00:01:32,640
Así que ahora es Agregar en el formulario y esto será como el formulario de registro a excepción de una gran

21
00:01:32,730 --> 00:01:34,980
diferencia que es donde se envía el formulario.

22
00:01:35,010 --> 00:01:38,410
Así que agregaremos la última Vamos a ir con las entradas de nuevo.

23
00:01:38,460 --> 00:01:47,820
Así que teclear es igual al texto en el primer nombre igual a nombre de usuario y marcador de posición es igual

24
00:01:47,820 --> 00:01:58,410
a nombre de usuario y luego lo duplicaremos y aquí haremos el mismo tipo de contraseña contraseña contraseña y el marcador de posición será contraseña.

25
00:02:00,180 --> 00:02:09,720
Y luego agregaremos un botón R para enviar el formulario y solo escribiremos el inicio de sesión y luego tendremos que trabajar

26
00:02:09,720 --> 00:02:11,400
en el formulario mismo.

27
00:02:11,400 --> 00:02:18,120
Por lo tanto, este formulario debe enviar una solicitud de entrada para recortar el inicio de sesión ya que una publicación será nuestra otra

28
00:02:18,120 --> 00:02:22,770
ruta que aún no hemos definido, pero allí es donde realmente procesaremos los datos y descubriremos si

29
00:02:22,770 --> 00:02:23,720
coinciden las credenciales.

30
00:02:24,230 --> 00:02:34,950
Así que vamos a configurar eso en lugar de iniciar sesión en cada caso, tenemos acción igual al registro de barras y el método también es

31
00:02:34,950 --> 00:02:35,980
una publicación.

32
00:02:36,450 --> 00:02:42,690
Por lo tanto, este formulario se encuentra en realidad en el inicio de sesión de barra inclinada a medida que recibe la ruta y se envía para iniciar sesión como una publicación.

33
00:02:43,320 --> 00:02:44,580
Ahora echemos un vistazo a eso.

34
00:02:44,850 --> 00:02:47,720
Actualiza la página que vemos el formulario.

35
00:02:47,790 --> 00:02:53,910
Genial si lo intentamos y lo enviamos en este momento, no tenemos un inicio de sesión como una ruta de publicación y solo se agota el

36
00:02:53,970 --> 00:02:54,790
tiempo de espera.

37
00:02:55,170 --> 00:03:03,420
Así que volveremos ahora y agregaremos el registro en la ruta posterior y esta ruta será responsable de la lógica de inicio de sesión.

38
00:03:04,320 --> 00:03:17,070
en la parte superior post slash inicie sesión en la solicitud de función en respuesta y aquí tenemos una nueva lógica y en realidad no es tan nueva porque ya la usamos aquí

39
00:03:17,070 --> 00:03:22,890
o tenemos pasaporte dot authenticate local Haremos exactamente lo mismo excepto que hay una pequeño

40
00:03:23,340 --> 00:03:28,860
giro que es que no vamos a hacerlo dentro de la devolución de llamada aquí.

41
00:03:28,860 --> 00:03:30,110
Por lo tanto,

42
00:03:30,300 --> 00:03:34,420
De hecho, vamos a hacerlo aquí como un segundo argumento.

43
00:03:34,560 --> 00:03:37,260
Así que déjame mostrarte cómo se ve primero y luego repasarlo.

44
00:03:37,260 --> 00:03:45,300
Así que amplificamos el registro de entrada y luego vamos a agregar pasaporte dot authenticate y eso

45
00:03:45,420 --> 00:03:51,970
tomará local como una coma de cadena y luego abrir y cerrar llaves.

46
00:03:52,200 --> 00:03:58,170
Y dentro de esos refuerzos hay un objeto y vamos a pasar en redirección de éxito.

47
00:03:58,170 --> 00:04:08,520
Y eso será un secreto de barra y, a continuación, la redirección de fallas se volverá a iniciar sesión y

48
00:04:08,520 --> 00:04:14,030
guardaremos y / o autenticará las necesidades para cerrar aquí.

49
00:04:14,030 --> 00:04:19,950
Por lo tanto, se necesitan esos dos pasaportes para los argumentos que autentiquen el local Y luego este objeto completo.

50
00:04:20,020 --> 00:04:25,470
Esos son los parámetros que estamos pasando en coma y luego esta es nuestra función de devolución de llamada y no necesitamos

51
00:04:25,470 --> 00:04:26,940
poner nada aquí por el momento.

52
00:04:26,970 --> 00:04:28,970
Así que simplemente lo dejaremos.

53
00:04:29,040 --> 00:04:31,030
Entonces, hablemos de lo que hemos hecho aquí.

54
00:04:31,350 --> 00:04:37,020
Ya hemos visto pasaporte dot authenticate pero no lo hemos visto usar así dentro del up up donde

55
00:04:37,230 --> 00:04:39,440
no está en la devolución de llamada.

56
00:04:40,050 --> 00:04:45,290
lo que se conoce como middleware y trabajaremos con middleware y escribiremos nuestro propio middleware y el próximo video.

57
00:04:45,300 --> 00:04:46,550
Así que esto es

58
00:04:46,590 --> 00:04:54,630
Pero la idea del middleware lo deletrearé aquí en el medio, donde dijiste un código que se ejecuta antes de

59
00:04:54,630 --> 00:04:56,930
nuestra devolución de ruta final aquí.

60
00:04:57,270 --> 00:05:02,970
Cuando nuestra aplicación recibe una solicitud posterior para cortar el inicio de sesión, ejecutará este código inmediatamente y podremos tener

61
00:05:02,970 --> 00:05:07,650
varios middleware apilados para que podamos tener otra cosa que se ejecutará después de que nos

62
00:05:07,680 --> 00:05:09,510
autentiquemos y luego otra cosa más.

63
00:05:09,510 --> 00:05:14,370
Y la idea es que se sienten entre el comienzo de su ruta y luego al final de la

64
00:05:14,370 --> 00:05:16,270
ruta, que es nuestro controlador al final.

65
00:05:16,590 --> 00:05:18,130
De ahí el nombre middleware.

66
00:05:18,420 --> 00:05:21,260
Así que de nuevo crearemos nuestro propio middleware en el próximo video.

67
00:05:21,420 --> 00:05:27,090
Pero, por ahora, todo lo que necesita saber es que esto se llama middleware y recuerda el pasaporte de autenticación de punto.

68
00:05:27,550 --> 00:05:32,340
Recuerde que el objetivo de todo esto es que en realidad trate de agradarle cuando lo marque

69
00:05:32,350 --> 00:05:33,650
y luego guarde sus credenciales.

70
00:05:33,840 --> 00:05:39,080
Por lo tanto, se necesitará la contraseña y el nombre de usuario que se encuentran en la solicitud dentro del cuerpo de solicitud.

71
00:05:39,750 --> 00:05:44,820
o del cuerpo de la solicitud y básicamente va a comparar la contraseña que el usuario

72
00:05:44,820 --> 00:05:50,580
tipeó en la entrada y compararla con esa versión loca de hash en la base de datos .

73
00:05:50,580 --> 00:05:55,950
Ni siquiera tenemos que proporcionar explícitamente que el pasaporte tome automáticamente la contraseña de usuario del formulario

74
00:05:55,950 --> 00:05:58,740
Y luego proporcionamos un objeto con dos parámetros.

75
00:05:58,740 --> 00:06:02,290
Redirigir el éxito y la redirección de fallas.

76
00:06:02,310 --> 00:06:07,650
Entonces, si funciona, vamos a redirigir para cortar el secreto y, si no funciona bien,

77
00:06:07,650 --> 00:06:10,410
redirigiremos para cortarlo y registrarlo antes de probarlo.

78
00:06:10,410 --> 00:06:16,470
Hay otra línea de código con la que tenemos que configurar el pasaporte, así que

79
00:06:16,490 --> 00:06:25,860
arriba donde lo hicimos. El pasaporte se serializa y serializa. El usuario agregará otro en el pasaporte. Usa la nueva estrategia local que es

80
00:06:25,860 --> 00:06:27,370
lo que importamos aquí.

81
00:06:27,480 --> 00:06:28,710
Apoyo a lo local

82
00:06:28,710 --> 00:06:30,490
Lo guardamos a la estrategia local.

83
00:06:30,990 --> 00:06:41,710
Así que regrese a esa nueva estrategia local y luego entre paréntesis use el punto authenticar y guardar.

84
00:06:41,790 --> 00:06:46,620
Así que estamos creando una nueva estrategia local utilizando el método de autentificación del usuario.

85
00:06:46,770 --> 00:06:53,130
Eso proviene de los traficantes locales de Passport, por lo que tampoco tenemos que escribir el método de

86
00:06:53,160 --> 00:06:53,680
autenticación.

87
00:06:53,850 --> 00:07:00,270
Eso nos lo dieron a nosotros y luego le dijimos pasaporte para el uso de la estrategia local de esa versión de autenticación

88
00:07:00,280 --> 00:07:01,440
de datos de usuario.

89
00:07:01,800 --> 00:07:06,400
OK, entonces ahora tenemos esa configuración, nuestra autenticación debería funcionar.

90
00:07:06,470 --> 00:07:08,450
Entonces, demos una oportunidad.

91
00:07:08,580 --> 00:07:10,480
No, en realidad sí.

92
00:07:10,570 --> 00:07:16,350
Y comencemos por intentar registrarse o iniciar sesión con una cuenta que sabemos que no funciona.

93
00:07:16,350 --> 00:07:21,860
Inicie sesión y lo llevará de vuelta a la página de inicio de sesión y eso es lo que habíamos configurado aquí.

94
00:07:22,380 --> 00:07:24,900
Error al redirigir el inicio de sesión de barra inclinada.

95
00:07:25,140 --> 00:07:27,250
Ahora inicia sesión con una cuenta que sé

96
00:07:30,720 --> 00:07:33,650
que funciona y esta vez me lleva a la página secreta.

97
00:07:34,260 --> 00:07:35,890
Así que ahora tenemos iniciar sesión trabajando.

98
00:07:36,120 --> 00:07:37,380
Todavía no tenemos cierre de sesión.

99
00:07:37,500 --> 00:07:43,470
Hemos iniciado sesión para poder inscribirme usando register y luego también pueden iniciar sesión.

100
00:07:43,530 --> 00:07:48,510
Tenemos una forma como Register tenía una ruta de formulario y luego tenemos una ruta de envío

101
00:07:48,510 --> 00:07:54,930
para hacer la autenticación y luego hablamos de middleware, que es la idea de tener algún código que se ejecuta entre el

102
00:07:54,930 --> 00:08:01,200
inicio de una ruta y el final de ese manejador de ruta en el próximo y último video de esta serie

103
00:08:01,520 --> 00:08:04,770
implementará el cierre de sesión y también crearemos nuestro propio middleware
