﻿1
00:00:00,910 --> 00:00:02,380
‫Narrador: Bienvenido de nuevo.

2
00:00:02,380 --> 00:00:05,510
‫Entonces, en este video, aprenderá una forma súper segura de cerrar

3
00:00:05,510 --> 00:00:06,983
‫la sesión de los usuarios.

4
00:00:08,580 --> 00:00:12,110
‫Entonces, hasta este punto, cuando queríamos eliminar un usuario,

5
00:00:12,110 --> 00:00:15,233
‫simplemente eliminábamos la cookie de nuestro navegador.

6
00:00:16,640 --> 00:00:17,570
‫¿Derecha?

7
00:00:17,570 --> 00:00:19,600
‫Entonces algo como esto,

8
00:00:19,600 --> 00:00:21,190
‫y luego elimínelo.

9
00:00:21,190 --> 00:00:24,020
‫Sin embargo, la cuestión es que creamos esta

10
00:00:24,020 --> 00:00:26,490
‫cookie como una cookie solo http.

11
00:00:26,490 --> 00:00:27,580
‫Recuerde eso,

12
00:00:27,580 --> 00:00:30,420
‫y eso significa que no podemos manipular esta

13
00:00:30,420 --> 00:00:32,730
‫cookie de ninguna manera en nuestro navegador.

14
00:00:32,730 --> 00:00:33,930
‫Por lo tanto,

15
00:00:33,930 --> 00:00:35,903
‫no podemos cambiarlo y tampoco podemos eliminarlo.

16
00:00:36,820 --> 00:00:40,580
‫Así que echemos un vistazo rápido a ese lugar del código

17
00:00:40,580 --> 00:00:41,643
‫donde hicimos eso.

18
00:00:42,730 --> 00:00:44,170
‫Entonces, en

19
00:00:45,316 --> 00:00:48,830
‫el controlador de autenticación, allí arriba, donde realmente

20
00:00:49,930 --> 00:00:52,103
‫creamos esa cookie, está aquí.

21
00:00:53,810 --> 00:00:56,910
‫Y nuevamente, recuerde, que esto significa que no

22
00:00:56,910 --> 00:01:00,350
‫podemos manipular la cookie en el navegador de ninguna manera.

23
00:01:00,350 --> 00:01:01,760
‫Ni siquiera destruirlo.

24
00:01:01,760 --> 00:01:03,220
‫Así que bórralo.

25
00:01:03,220 --> 00:01:07,510
‫Entonces, si queremos seguir usando esta forma súper segura de almacenar

26
00:01:07,510 --> 00:01:09,290
‫cookies, ¿cómo vamos a

27
00:01:09,290 --> 00:01:12,730
‫poder cerrar la sesión de los usuarios en

28
00:01:12,730 --> 00:01:14,260
‫nuestro sitio web?

29
00:01:14,260 --> 00:01:17,300
‫Porque generalmente con la autenticación JWT simplemente eliminamos

30
00:01:17,300 --> 00:01:18,820
‫la cookie o

31
00:01:18,820 --> 00:01:21,000
‫el token del almacenamiento local.

32
00:01:21,000 --> 00:01:25,400
‫Pero bueno, de nuevo, eso no es posible cuando se usa de esta manera.

33
00:01:25,400 --> 00:01:28,240
‫Entonces, lo que haremos en su lugar es crear

34
00:01:28,240 --> 00:01:31,940
‫una ruta de cierre de sesión muy simple que simplemente enviará

35
00:01:31,940 --> 00:01:34,340
‫una nueva cookie con el mismo nombre

36
00:01:34,340 --> 00:01:36,170
‫exacto pero sin el token.

37
00:01:36,170 --> 00:01:38,810
‫Y entonces eso anulará la cookie actual que

38
00:01:38,810 --> 00:01:41,970
‫tenemos en el navegador con una que tenga el mismo

39
00:01:41,970 --> 00:01:43,740
‫nombre pero sin token.

40
00:01:43,740 --> 00:01:46,440
‫Entonces, cuando esa cookie se envíe junto

41
00:01:46,440 --> 00:01:49,560
‫con la siguiente solicitud, no podremos identificar al

42
00:01:49,560 --> 00:01:51,960
‫usuario como si hubiera iniciado sesión.

43
00:01:51,960 --> 00:01:55,430
‫Y entonces esto efectivamente cerrará la sesión del usuario.

44
00:01:55,430 --> 00:01:57,140
‫Y también le daremos a

45
00:01:57,140 --> 00:01:59,580
‫esta cookie un tiempo de vencimiento muy corto.

46
00:01:59,580 --> 00:02:02,300
‫Entonces, esto será un poco como

47
00:02:02,300 --> 00:02:03,500
‫eliminar la

48
00:02:03,500 --> 00:02:07,920
‫cookie, pero con una solución muy inteligente como esta, ¿de acuerdo?

49
00:02:07,920 --> 00:02:11,203
‫Así que hagámoslo aquí, justo después de iniciar sesión.

50
00:02:16,740 --> 00:02:20,480
‫Entonces, nuevamente, cuando hacemos autenticación basada en token, generalmente nunca

51
00:02:20,480 --> 00:02:22,770
‫necesitamos un punto final como este,

52
00:02:25,050 --> 00:02:30,020
‫pero cuando queremos enviar una cookie súper segura como lo hacemos bien, entonces

53
00:02:30,020 --> 00:02:31,920
‫tenemos que hacerlo así.

54
00:02:32,770 --> 00:02:36,900
‫Entonces, nuevamente, en la respuesta configuramos la cookie, y el

55
00:02:36,900 --> 00:02:40,220
‫secreto es darle exactamente el mismo nombre.

56
00:02:40,220 --> 00:02:41,930
‫Así que tal como

57
00:02:41,930 --> 00:02:44,450
‫mencioné antes, y eso es jwt.

58
00:02:44,450 --> 00:02:47,800
‫Así que igual que aquí, ¿de acuerdo?

59
00:02:47,800 --> 00:02:50,700
‫Pero aquí, luego enviamos el

60
00:02:50,700 --> 00:02:54,460
‫token, pero ahora enviaremos simplemente un texto ficticio.

61
00:02:54,460 --> 00:02:56,113
‫Digamos que se desconectó y luego

62
00:02:58,130 --> 00:02:59,530
‫las opciones de cookies.

63
00:03:02,320 --> 00:03:04,280
‫Entonces, una fecha de vencimiento, como en 10

64
00:03:04,280 --> 00:03:05,893
‫segundos a partir de ahora.

65
00:03:07,550 --> 00:03:09,970
‫Así que creemos una nueva fecha

66
00:03:09,970 --> 00:03:10,900
‫basada

67
00:03:11,940 --> 00:03:14,210
‫en la fecha. ahora

68
00:03:15,610 --> 00:03:17,290
‫más 10 segundos.

69
00:03:17,290 --> 00:03:20,173
‫Entonces eso es 10 veces 1000.

70
00:03:21,660 --> 00:03:26,060
‫Y también voy a configurarlo, nuevamente, solo en http.

71
00:03:26,060 --> 00:03:27,600
‫Establecido en verdadero,

72
00:03:27,600 --> 00:03:30,330
‫pero no es necesario que lo establezcamos como

73
00:03:30,330 --> 00:03:32,900
‫seguro, porque en este caso no hay

74
00:03:32,900 --> 00:03:34,833
‫datos confidenciales que cualquiera pueda obtener.

75
00:03:36,560 --> 00:03:38,083
‫Aquí nos falta la coma, por

76
00:03:39,560 --> 00:03:42,803
‫lo que ahora todo lo que tenemos que hacer es devolver esta respuesta.

77
00:03:43,660 --> 00:03:46,100
‫Así que el estado 200 y

78
00:03:50,730 --> 00:03:53,143
‫simplemente marquémoslo como éxito aquí.

79
00:03:57,000 --> 00:04:00,930
‫Luego, en nuestra ruta, debemos agregarlo, por supuesto, también para que

80
00:04:00,930 --> 00:04:02,740
‫esté en la ruta del

81
00:04:04,470 --> 00:04:06,853
‫usuario, así que hagámoslo aquí después

82
00:04:07,900 --> 00:04:11,220
‫de iniciar sesión, pero esta será una solicitud de

83
00:04:11,220 --> 00:04:13,130
‫obtención porque no vamos a

84
00:04:13,130 --> 00:04:14,660
‫enviar ningún dato.

85
00:04:14,660 --> 00:04:16,410
‫junto con la solicitud,

86
00:04:16,410 --> 00:04:19,190
‫no cambiamos nada, simplemente obtenemos una cookie.

87
00:04:19,190 --> 00:04:21,730
‫Y ese nombre realmente tiene sentido.

88
00:04:21,730 --> 00:04:23,853
‫O ese verbo realmente tiene sentido.

89
00:04:24,860 --> 00:04:26,580
‫Así que cierre

90
00:04:26,580 --> 00:04:31,580
‫la sesión, y ahora estamos listos para tomar esa ruta tal como

91
00:04:31,610 --> 00:04:34,463
‫lo hicimos aquí con nuestra biblioteca Axios.

92
00:04:37,420 --> 00:04:39,110
‫Entonces, exporta, cierra la sesión

93
00:04:39,110 --> 00:04:40,590
‫o en realidad const

94
00:04:40,590 --> 00:04:41,950
‫primero y, al

95
00:04:47,320 --> 00:04:48,980
‫igual que antes, estamos usando

96
00:04:48,980 --> 00:04:50,790
‫un bloque try catch que en

97
00:04:53,260 --> 00:04:56,140
‫este caso no es realmente tan importante porque

98
00:04:56,140 --> 00:04:59,270
‫realmente no puede haber un error al cerrar la

99
00:04:59,270 --> 00:05:00,270
‫sesión, ¿verdad?

100
00:05:00,270 --> 00:05:02,420
‫Pero de todos modos, por si acaso, por

101
00:05:02,420 --> 00:05:04,140
‫ejemplo, no tenemos conexión a Internet.

102
00:05:04,140 --> 00:05:07,800
‫Entonces, en ese caso, obtendremos un buen error

103
00:05:07,800 --> 00:05:09,910
‫y hagámoslo primero aquí.

104
00:05:09,910 --> 00:05:11,060
‫Así que muestra el

105
00:05:16,570 --> 00:05:17,570
‫error al cerrar

106
00:05:20,010 --> 00:05:21,520
‫la sesión, inténtalo de nuevo.

107
00:05:21,520 --> 00:05:23,730
‫Está bien, pero esto aquí, como dije, no

108
00:05:23,730 --> 00:05:25,393
‫debería suceder tan a menudo.

109
00:05:26,330 --> 00:05:27,170
‫Entonces, en

110
00:05:28,370 --> 00:05:29,203
‫cambio,

111
00:05:30,060 --> 00:05:31,973
‫hagamos nuestra solicitud con Axios.

112
00:05:33,810 --> 00:05:34,643
‫Está bien.

113
00:05:37,760 --> 00:05:39,610
‫Entonces, el método esta vez es obtener

114
00:05:41,980 --> 00:05:43,120
‫y la URL es

115
00:05:44,030 --> 00:05:45,523
‫similar a la que tenemos

116
00:05:46,950 --> 00:05:48,030
‫aquí, pero es

117
00:05:49,480 --> 00:05:50,313
‫cerrar sesión.

118
00:05:52,177 --> 00:05:56,140
‫Y luego, como paso siguiente, recarguemos también la página.

119
00:05:56,140 --> 00:05:58,180
‫Entonces eso es lo que siempre

120
00:05:58,180 --> 00:06:00,400
‫hacemos manualmente cuando eliminamos una cookie, ¿verdad?

121
00:06:00,400 --> 00:06:03,500
‫Y aquí, por supuesto, tenemos que hacerlo programáticamente.

122
00:06:03,500 --> 00:06:04,333
‫¿Derecha?

123
00:06:04,333 --> 00:06:05,550
‫Y tenemos que hacerlo aquí

124
00:06:05,550 --> 00:06:09,780
‫porque, dado que se trata de una solicitud de Ajax, no podemos hacerlo en la

125
00:06:09,780 --> 00:06:10,990
‫parte de atrás.

126
00:06:10,990 --> 00:06:13,100
‫Entonces no podemos hacerlo con express.

127
00:06:13,100 --> 00:06:16,420
‫Y entonces, por supuesto, debemos hacerlo manualmente aquí.

128
00:06:16,420 --> 00:06:17,350
‫¿Derecha?

129
00:06:17,350 --> 00:06:20,680
‫De lo contrario, técnicamente se cerraría la sesión, pero nuestro

130
00:06:20,680 --> 00:06:23,320
‫menú de usuario aún se reflejaría, por lo

131
00:06:23,320 --> 00:06:25,950
‫que aún mostraría que hemos iniciado sesión.

132
00:06:25,950 --> 00:06:29,120
‫Y, por supuesto, simplemente necesitamos volver a cargar la página

133
00:06:29,120 --> 00:06:31,950
‫que luego enviaría la cookie no válida básicamente al

134
00:06:31,950 --> 00:06:33,150
‫servidor, de modo

135
00:06:33,150 --> 00:06:36,140
‫que la que acabamos de recibir sin un token

136
00:06:36,140 --> 00:06:38,190
‫y luego ya no estamos conectados,

137
00:06:38,190 --> 00:06:42,303
‫y por lo tanto, nuestro menú de usuario lo hará. desaparecer, ¿de acuerdo?

138
00:06:43,210 --> 00:06:46,150
‫Así que hagámoslo si ha tenido éxito.

139
00:06:46,150 --> 00:06:51,150
‫Así que, como antes, descansa. datos. estado.

140
00:06:52,720 --> 00:06:56,540
‫Y así, en este punto final, también enviamos el estado

141
00:06:57,430 --> 00:06:59,140
‫establecido a éxito, y

142
00:06:59,140 --> 00:07:02,040
‫así podemos probarlo una vez más aquí.

143
00:07:02,040 --> 00:07:03,800
‫Entonces, si este es el

144
00:07:03,800 --> 00:07:06,290
‫caso, en realidad ni siquiera lo necesitamos, así que

145
00:07:06,290 --> 00:07:11,180
‫en este caso, la ubicación de la viuda. recargar.

146
00:07:11,180 --> 00:07:13,520
‫Y luego algo realmente importante es

147
00:07:13,520 --> 00:07:16,260
‫que realmente necesitamos configurarlo como verdadero aquí, y

148
00:07:16,260 --> 00:07:19,070
‫eso luego forzará una recarga desde el servidor

149
00:07:19,070 --> 00:07:22,280
‫y no desde la caché del navegador, ¿de acuerdo?

150
00:07:22,280 --> 00:07:24,830
‫Ahora y, por supuesto, debemos marcarlo aquí como

151
00:07:26,080 --> 00:07:27,710
‫asíncrono, y está bien.

152
00:07:27,710 --> 00:07:30,350
‫Entonces, esta parte aquí es realmente importante nuevamente porque,

153
00:07:30,350 --> 00:07:32,930
‫de lo contrario, podría simplemente cargar la misma

154
00:07:32,930 --> 00:07:33,770
‫página desde

155
00:07:33,770 --> 00:07:37,070
‫el caché, lo que aún tendría nuestro menú de usuario allí.

156
00:07:37,070 --> 00:07:38,970
‫Pero, por supuesto, eso no es

157
00:07:38,970 --> 00:07:42,243
‫lo que queremos, realmente queremos que salga una página nueva del servidor.

158
00:07:43,540 --> 00:07:44,720
‫¿Está bien?

159
00:07:44,720 --> 00:07:47,020
‫Así que tenemos nuestra función de

160
00:07:47,020 --> 00:07:51,560
‫cierre de sesión y ahora en el índice básicamente necesitamos activarla una

161
00:07:51,560 --> 00:07:53,700
‫vez que presionemos ese botón.

162
00:07:53,700 --> 00:07:56,463
‫Entonces, primero creemos un elemento aquí.

163
00:07:59,470 --> 00:08:00,830
‫Entonces, el documento del

164
00:08:02,080 --> 00:08:04,830
‫botón de cierre de sesión. querySelector y

165
00:08:10,786 --> 00:08:14,203
‫recuerda cómo creamos este elemento.

166
00:08:15,660 --> 00:08:17,783
‫Así que eso es aquí.

167
00:08:19,350 --> 00:08:20,976
‫Entonces este.

168
00:08:20,976 --> 00:08:23,110
‫Así que estamos seleccionando ahora por esta clase.

169
00:08:23,110 --> 00:08:26,910
‫Está bien, y por supuesto también podríamos usar una identificación aquí,

170
00:08:26,910 --> 00:08:30,240
‫pero eso no es realmente importante, ¿de acuerdo?

171
00:08:30,240 --> 00:08:33,760
‫Lo que importa aquí es decir ahora si

172
00:08:33,760 --> 00:08:35,713
‫hay un botón

173
00:08:39,980 --> 00:08:44,980
‫para cerrar sesión, entonces logOutButton. addEventListener.

174
00:08:45,720 --> 00:08:48,650
‫Así que queremos que escuche todos los eventos

175
00:08:48,650 --> 00:08:52,330
‫que suceden en ese botón cada vez que hay un clic.

176
00:08:52,330 --> 00:08:54,370
‫Así que estamos esperando el evento de

177
00:08:54,370 --> 00:08:57,460
‫clic y cuando eso sucede, llamamos a la función de

178
00:08:58,740 --> 00:09:00,800
‫cierre de sesión que aún no importamos,

179
00:09:00,800 --> 00:09:02,650
‫así que agreguemos eso aquí.

180
00:09:02,650 --> 00:09:06,023
‫Así que inicie sesión y cierre la sesión.

181
00:09:07,680 --> 00:09:10,223
‫Está bien, y eso debería ser realmente.

182
00:09:11,290 --> 00:09:14,570
‫Entonces, probémoslo ahora.

183
00:09:14,570 --> 00:09:17,240
‫Vuelva a cargarlo solo para estar seguro, y

184
00:09:17,240 --> 00:09:18,740
‫ahora Oh, obtenemos

185
00:09:18,740 --> 00:09:20,870
‫un error al cerrar la sesión.

186
00:09:20,870 --> 00:09:22,253
‫Inténtalo de nuevo, ¿por qué?

187
00:09:26,650 --> 00:09:30,710
‫Bueno, intentemos ver mejor el error.

188
00:09:30,710 --> 00:09:33,130
‫Pero lo importante es que en realidad todo esto

189
00:09:33,130 --> 00:09:34,283
‫ya está funcionando.

190
00:09:35,480 --> 00:09:36,970
‫Entonces, este oyente de eventos

191
00:09:39,207 --> 00:09:42,407
‫aquí y también esta función de cierre de sesión están haciendo su trabajo.

192
00:09:44,360 --> 00:09:45,500
‫Así que

193
00:09:46,880 --> 00:09:51,383
‫hagamos la consola. error de registro. respuesta.

194
00:09:55,370 --> 00:09:58,310
‫Así que recarguemos esto aquí.

195
00:09:58,310 --> 00:10:00,223
‫Debería suceder automáticamente.

196
00:10:01,330 --> 00:10:02,343
‫Está bien.

197
00:10:03,350 --> 00:10:04,703
‫Así que inténtalo de nuevo.

198
00:10:06,820 --> 00:10:08,480
‫Entonces, ¿qué está sucediendo aquí, así

199
00:10:12,500 --> 00:10:16,493
‫que el lanzamiento a la identificación del objeto falló para el cierre de sesión del valor?

200
00:10:17,880 --> 00:10:20,180
‫Eso es muy extraño.

201
00:10:20,180 --> 00:10:21,523
‫Eche un vistazo a esa ruta.

202
00:10:23,360 --> 00:10:24,523
‫Oh, por supuesto,

203
00:10:25,910 --> 00:10:27,750
‫eso es un grave error.

204
00:10:27,750 --> 00:10:29,223
‫Por supuesto, debería iniciar sesión.

205
00:10:31,110 --> 00:10:34,933
‫Está bien, pero este tipo de curso, de nuevo, sucede todo el tiempo.

206
00:10:36,490 --> 00:10:38,423
‫Así que recarguemos esto aquí.

207
00:10:42,240 --> 00:10:43,733
‫E intente esto de nuevo.

208
00:10:44,680 --> 00:10:46,700
‫Y ahora estamos obteniendo algo aquí.

209
00:10:46,700 --> 00:10:48,200
‫Ahora sigue siendo un

210
00:10:48,200 --> 00:10:50,160
‫error, pero eso no es ningún problema.

211
00:10:50,160 --> 00:10:52,750
‫Entonces, tenemos un error de token web

212
00:10:52,750 --> 00:10:55,810
‫JSON porque nuestro token web JSON tiene un formato incorrecto.

213
00:10:55,810 --> 00:10:57,890
‫Y así viene,

214
00:10:57,890 --> 00:11:00,610
‫como puede ver, del middleware registrado.

215
00:11:00,610 --> 00:11:04,323
‫Y entonces podemos adivinar por qué es eso, ¿verdad?

216
00:11:05,530 --> 00:11:09,290
‫Así que volvamos a agregar nuestro controlador de autenticación.

217
00:11:09,290 --> 00:11:11,410
‫Entonces, el token web JSON

218
00:11:11,410 --> 00:11:14,430
‫que básicamente estamos enviando ahora está aquí, ¿verdad?

219
00:11:14,430 --> 00:11:15,960
‫Así que esto se desconectó.

220
00:11:15,960 --> 00:11:17,520
‫Y entonces

221
00:11:18,370 --> 00:11:23,040
‫aquí en isLoggedIn eso básicamente desencadenará un error.

222
00:11:23,040 --> 00:11:27,170
‫Entonces, aquí en JSON web token verificar, ¿verdad?

223
00:11:27,170 --> 00:11:29,420
‫Y dado que toda esta función aquí

224
00:11:29,420 --> 00:11:33,070
‫está incluida en este catchASync, enviará este error a todo el middleware

225
00:11:33,070 --> 00:11:35,100
‫de manejo de errores globales.

226
00:11:35,100 --> 00:11:38,290
‫Y eso creará entonces este error que en este

227
00:11:38,290 --> 00:11:40,240
‫caso no queremos, ¿recuerdas?

228
00:11:40,240 --> 00:11:41,368
‫Entonces, en

229
00:11:41,368 --> 00:11:45,220
‫este middleware isLoggedIn no queremos causar ningún error.

230
00:11:45,220 --> 00:11:47,480
‫Entonces, solucionemos eso y,

231
00:11:47,480 --> 00:11:50,520
‫por lo tanto, eliminaremos este catchASync de

232
00:11:51,490 --> 00:11:55,090
‫aquí porque no queremos detectar ningún error Async.

233
00:11:55,090 --> 00:11:57,640
‫En cambio, lo que queremos hacer es

234
00:11:57,640 --> 00:11:59,200
‫básicamente detectarlos localmente y

235
00:11:59,200 --> 00:12:02,083
‫luego, si hay un error, simplemente diga siguiente.

236
00:12:03,300 --> 00:12:05,240
‫Así, ¿de acuerdo?

237
00:12:05,240 --> 00:12:06,363
‫Así que hagámoslo.

238
00:12:08,350 --> 00:12:10,813
‫Así que envuelve todo esto en un intento.

239
00:12:14,170 --> 00:12:15,133
‫Ciérralo aquí.

240
00:12:18,750 --> 00:12:19,890
‫Bueno, algo más anda mal.

241
00:12:19,890 --> 00:12:23,303
‫¡Ah! Probablemente nos falte el bloque de captura.

242
00:12:27,520 --> 00:12:32,010
‫Entonces, en este caso, queremos pasar al siguiente middleware.

243
00:12:32,010 --> 00:12:35,463
‫Básicamente, digo que no hay ningún usuario que haya iniciado sesión.

244
00:12:36,910 --> 00:12:37,743
‫¿Derecha?

245
00:12:38,970 --> 00:12:41,543
‫Entonces, probemos de nuevo.

246
00:12:42,510 --> 00:12:45,283
‫Regrese, oh, y ahora ya no estamos conectados.

247
00:12:47,900 --> 00:12:49,590
‫Así que inicia sesión.

248
00:12:49,590 --> 00:12:51,103
‫Eso fue exitoso.

249
00:12:52,160 --> 00:12:54,093
‫Y ahora, de inmediato, cierre la sesión.

250
00:12:55,210 --> 00:12:59,110
‫¡Ah! ¡Hermosa! Ahora funciona correctamente.

251
00:12:59,110 --> 00:13:02,160
‫Y entonces, esta vez, lo que sucedió aquí es

252
00:13:02,160 --> 00:13:04,160
‫que, por supuesto, esta verificación aquí

253
00:13:04,160 --> 00:13:07,730
‫falló porque ese token web JSON no estaba en el formato

254
00:13:07,730 --> 00:13:09,560
‫que esperaba este algoritmo.

255
00:13:09,560 --> 00:13:12,380
‫Pero lo que sucedió en este caso es

256
00:13:12,380 --> 00:13:15,020
‫que el error no se detectó

257
00:13:15,020 --> 00:13:18,470
‫usando nuestra función catchASync, sino que fue directamente a catch

258
00:13:18,470 --> 00:13:21,480
‫err, que luego pasó directamente al siguiente middleware.

259
00:13:21,480 --> 00:13:23,790
‫¡Muy bien, genial!

260
00:13:23,790 --> 00:13:26,800
‫Entonces, si ahora echamos un vistazo a nuestras

261
00:13:26,800 --> 00:13:30,743
‫cookies, bueno, tenemos una en uso que probablemente ya haya caducado.

262
00:13:31,840 --> 00:13:35,810
‫Verá que solo tiene esta vida de 10 segundos y, por lo tanto,

263
00:13:35,810 --> 00:13:38,050
‫si recargo esta página ahora, en realidad,

264
00:13:40,130 --> 00:13:41,680
‫ya debería haber desaparecido.

265
00:13:43,700 --> 00:13:46,350
‫Entonces ves cero cookies en uso.

266
00:13:46,350 --> 00:13:48,800
‫De acuerdo, y eso es todo lo que tenemos

267
00:13:48,800 --> 00:13:51,583
‫que hacer para cerrar la sesión del usuario en nuestro sitio web.

