﻿1
00:00:01,350 --> 00:00:03,520
‫Jonas: Ahora implementemos un controlador de ruta

2
00:00:03,520 --> 00:00:07,750
‫para las solicitudes de publicación para que podamos agregar un Natour a nuestro

3
00:00:07,750 --> 00:00:09,023
‫conjunto de datos.

4
00:00:10,470 --> 00:00:12,870
‫Así que, al igual que con el controlador

5
00:00:12,870 --> 00:00:15,350
‫de solicitudes doGET (), comencemos agregando una nueva ruta.

6
00:00:15,350 --> 00:00:19,220
‫Así que app. publique esta vez, y recuerde

7
00:00:19,220 --> 00:00:22,120
‫que ahora usamos post así que el método

8
00:00:22,120 --> 00:00:26,140
‫post aquí, porque ese es el tipo de solicitud que queremos manejar.

9
00:00:26,140 --> 00:00:30,263
‫Entonces, las solicitudes que se realizan con el verbo de publicación http, ¿verdad?

10
00:00:32,483 --> 00:00:33,316
‫V1

11
00:00:34,610 --> 00:00:35,960
‫y recorridos.

12
00:00:35,960 --> 00:00:39,690
‫Tal como hablamos en la conferencia de la API REST,

13
00:00:39,690 --> 00:00:42,363
‫la URL es exactamente la misma.

14
00:00:43,390 --> 00:00:46,290
‫No importa si queremos obtener todos los recorridos o

15
00:00:46,290 --> 00:00:48,800
‫si queremos crear un nuevo recorrido, la

16
00:00:48,800 --> 00:00:50,650
‫URL es exactamente la misma.

17
00:00:50,650 --> 00:00:53,780
‫Entonces, lo único que cambia es el método http

18
00:00:53,780 --> 00:00:56,363
‫que usamos para hacer estas solicitudes.

19
00:00:57,592 --> 00:01:01,420
‫Para obtener todos los recorridos y publicar para crear un nuevo

20
00:01:01,420 --> 00:01:04,337
‫recorrido, entonces aquí, nuestra función típica de devolución

21
00:01:04,337 --> 00:01:06,906
‫de llamada donde obtenemos acceso a

22
00:01:06,906 --> 00:01:10,810
‫la solicitud y al objeto de respuesta para que podamos obtener

23
00:01:10,810 --> 00:01:14,560
‫algunos datos de la solicitud y enviar de vuelta un respuesta.

24
00:01:14,560 --> 00:01:16,800
‫Ahora recuerde que con una solicitud

25
00:01:16,800 --> 00:01:20,790
‫de publicación, podemos enviar datos desde el cliente al servidor, ¿verdad?

26
00:01:20,790 --> 00:01:24,543
‫Entonces, estos datos están idealmente disponibles en la solicitud.

27
00:01:25,690 --> 00:01:28,970
‫El objeto de solicitud nuevamente es lo que contiene todos los

28
00:01:28,970 --> 00:01:32,240
‫datos, toda la información, sobre la solicitud que se realizó.

29
00:01:32,240 --> 00:01:35,190
‫Si esa solicitud contiene algunos datos que

30
00:01:35,190 --> 00:01:38,840
‫se enviaron, esos datos deberían estar en la solicitud, ¿verdad?

31
00:01:38,840 --> 00:01:42,890
‫Ahora, listo para usar, Express no incluye esos datos corporales

32
00:01:42,890 --> 00:01:46,670
‫en la solicitud, y para tener esos datos disponibles, tenemos

33
00:01:46,670 --> 00:01:49,176
‫que usar algo llamado middleware.

34
00:01:49,176 --> 00:01:52,100
‫Hablaremos en gran detalle sobre el middleware en un

35
00:01:52,100 --> 00:01:54,220
‫par de conferencias, pero por ahora,

36
00:01:54,220 --> 00:01:56,280
‫para que esto funcione, necesitamos

37
00:01:56,280 --> 00:01:59,943
‫incluir un middleware simple aquí en la parte superior del archivo.

38
00:02:01,860 --> 00:02:04,000
‫Así que en realidad, aquí mismo.

39
00:02:04,000 --> 00:02:08,490
‫Lo que tenemos que hacer es decir app. utilizar y luego

40
00:02:08,490 --> 00:02:09,370
‫expresar. json Está bien, y

41
00:02:12,687 --> 00:02:13,520
‫eso es todo.

42
00:02:14,490 --> 00:02:16,030
‫Así que de nuevo, esto [express. json] aquí está el middleware.

43
00:02:16,030 --> 00:02:20,480
‫Y el middleware es básicamente una

44
00:02:20,480 --> 00:02:23,510
‫función que puede modificar los datos de la solicitud entrante.

45
00:02:23,510 --> 00:02:25,560
‫Se llama middleware porque se

46
00:02:25,560 --> 00:02:28,370
‫encuentra en medio de la solicitud y la respuesta.

47
00:02:28,370 --> 00:02:31,390
‫Es solo un paso por el que

48
00:02:31,390 --> 00:02:34,030
‫pasa la solicitud mientras se procesa.

49
00:02:34,030 --> 00:02:35,830
‫Y el paso por el que pasan las

50
00:02:35,830 --> 00:02:38,440
‫solicitudes, en este ejemplo, es simplemente que se le agregan los datos del cuerpo.

51
00:02:38,440 --> 00:02:42,330
‫Por lo tanto, se agrega al objeto de solicitud mediante

52
00:02:42,330 --> 00:02:44,410
‫el uso de este middleware.

53
00:02:44,410 --> 00:02:45,963
‫Usamos la aplicación. utilizar para utilizar middleware como este.

54
00:02:47,560 --> 00:02:51,763
‫Y nuevamente, hablaremos mucho más sobre

55
00:02:52,870 --> 00:02:55,250
‫middleware un poco más adelante en esta sección.

56
00:02:55,250 --> 00:02:57,540
‫Por ahora, sepa que así es como usamos el middleware.

57
00:02:57,540 --> 00:03:00,703
‫Todos los detalles seguirán más tarde.

58
00:03:01,750 --> 00:03:04,110
‫Entonces, por ahora, solo para comenzar,

59
00:03:04,110 --> 00:03:07,307
‫quiero mostrarle los datos del cuerpo en la consola, solo

60
00:03:07,307 --> 00:03:09,830
‫para verificar que realmente funcione, así que req. cuerpo.

61
00:03:09,830 --> 00:03:14,830
‫Nuevamente, body es la propiedad

62
00:03:14,920 --> 00:03:17,960
‫que estará disponible en la solicitud, porque

63
00:03:17,960 --> 00:03:21,130
‫usamos ese middleware hace un par de momentos.

64
00:03:21,130 --> 00:03:22,393
‫Entonces queremos registrar [req. body] a la consola

65
00:03:23,560 --> 00:03:27,090
‫y luego también debemos enviar una respuesta.

66
00:03:27,090 --> 00:03:29,600
‫Entonces res. enviar y por ahora solo un marcador de posición aquí.

67
00:03:29,600 --> 00:03:34,083
‫Simplemente 'Hecho' bien.

68
00:03:35,870 --> 00:03:37,020
‫Por lo tanto,

69
00:03:37,020 --> 00:03:39,070
‫siempre debemos enviar algo para finalizar

70
00:03:39,070 --> 00:03:42,600
‫el llamado ciclo de solicitud / respuesta, del cual, nuevamente, aprenderemos

71
00:03:42,600 --> 00:03:44,980
‫un poco más más adelante en esta sección.

72
00:03:44,980 --> 00:03:46,530
‫Así que ahora probemos

73
00:03:46,530 --> 00:03:49,363
‫esto y creemos una nueva solicitud para la publicación.

74
00:03:49,363 --> 00:03:51,200
‫Ahora, aquí en cartero, podemos hacer

75
00:03:51,200 --> 00:03:53,680
‫algo realmente bueno que es guardar todas estas solicitudes.

76
00:03:53,680 --> 00:03:56,133
‫Empezaré por crear una

77
00:03:58,180 --> 00:04:01,200
‫nueva colección, a la que llamaré Natours.

78
00:04:01,200 --> 00:04:02,500
‫Nueva colección.

79
00:04:06,570 --> 00:04:07,600
‫Ahora guardaré esta solicitud dentro de esa colección.

80
00:04:07,600 --> 00:04:10,793
‫Así que este es Get all the Tours.

81
00:04:12,650 --> 00:04:14,573
‫Ponlo en Natours y ahorra.

82
00:04:17,380 --> 00:04:20,290
‫Así que ahora tenemos nuestras solicitudes Get aquí mismo.

83
00:04:20,290 --> 00:04:23,563
‫Bueno, copiemos este aquí mismo, creemos

84
00:04:26,070 --> 00:04:27,410
‫uno nuevo.

85
00:04:27,410 --> 00:04:28,583
‫Así que esta es una solicitud de publicación.

86
00:04:30,120 --> 00:04:31,970
‫Antes de hacerlo,

87
00:04:31,970 --> 00:04:35,330
‫también lo guardaré en esta colección.

88
00:04:35,330 --> 00:04:36,853
‫Así que crea un nuevo recorrido.

89
00:04:38,080 --> 00:04:41,083
‫Aquí en el lado izquierdo, ahora tenemos nuestras dos solicitudes.

90
00:04:43,443 --> 00:04:47,733
‫Especifiquemos ahora nuestro cuerpo aquí, de modo que los

91
00:04:49,070 --> 00:04:52,620
‫datos que básicamente queremos enviar al servidor.

92
00:04:52,620 --> 00:04:56,550
‫Venimos aquí a Body, y hay diferentes formas de hacerlo

93
00:04:56,550 --> 00:04:59,370
‫ahora, pero la más fácil es

94
00:04:59,370 --> 00:05:02,250
‫simplemente decir, Raw y luego Application JSON.

95
00:05:02,250 --> 00:05:06,260
‫Todo lo que tenemos que hacer aquí es básicamente especificar algo de

96
00:05:06,260 --> 00:05:09,470
‫JSON, y eso luego se transmitirá al servidor.

97
00:05:09,470 --> 00:05:12,180
‫Entonces, lo primero que queremos especificar es

98
00:05:12,180 --> 00:05:13,760
‫el nombre del Tour,

99
00:05:13,760 --> 00:05:17,150
‫y recuerde que en JSON, todo debe estar entre

100
00:05:17,150 --> 00:05:20,550
‫comillas y en realidad comillas dobles, no solo entre comillas.

101
00:05:20,550 --> 00:05:21,873
‫Permítanme llamar a este Tour

102
00:05:22,810 --> 00:05:26,040
‫de prueba, y echemos un vistazo a qué más tenemos en los datos del recorrido.

103
00:05:26,040 --> 00:05:29,343
‫Así que tenemos el nombre, tenemos la duración,

104
00:05:30,550 --> 00:05:32,850
‫y pongamos también la dificultad.

105
00:05:32,850 --> 00:05:35,033
‫Así que no voy a especificar todos estos

106
00:05:37,260 --> 00:05:38,720
‫porque eso lleva demasiado tiempo.

107
00:05:38,720 --> 00:05:40,893
‫Digamos que la duración es

108
00:05:42,500 --> 00:05:45,870
‫de 10 días y la dificultad es

109
00:05:45,870 --> 00:05:46,890
‫fácil.

110
00:05:50,250 --> 00:05:51,483
‫Eso como nuestro cuerpo será transmitido al servidor.

111
00:05:52,800 --> 00:05:57,290
‫Así que eso está probado ahora, presionando enviar y aquí

112
00:05:57,290 --> 00:06:00,550
‫obtenemos nuestra respuesta, que está lista, recuerde.

113
00:06:00,550 --> 00:06:03,500
‫Aquí está la respuesta que le enviamos, así hecho.

114
00:06:07,104 --> 00:06:09,520
‫Y ves que aquí abajo en nuestra

115
00:06:09,520 --> 00:06:11,700
‫consola, ahora tenemos un objeto que

116
00:06:11,700 --> 00:06:15,153
‫es básicamente el JSON que enviamos a nuestro cuerpo, ¿verdad?

117
00:06:15,153 --> 00:06:17,750
‫¡Tan perfecto que funciona!

118
00:06:17,750 --> 00:06:19,600
‫Ya no es JSON, como puede ver.

119
00:06:19,600 --> 00:06:21,170
‫Es realmente un objeto de JavaScript.

120
00:06:21,170 --> 00:06:23,860
‫Solo para mostrarle que

121
00:06:23,860 --> 00:06:27,000
‫realmente necesitábamos middleware, comentemos este.

122
00:06:27,000 --> 00:06:28,350
‫Envialo de nuevo.

123
00:06:30,190 --> 00:06:31,688
‫Ahora ya no tengo la solicitud. cuerpo, verdad?

124
00:06:31,688 --> 00:06:36,160
‫Por eso ahora no está definido, porque ya no existe.

125
00:06:36,160 --> 00:06:39,093
‫Déjelo guardar, envíe nuestra

126
00:06:40,440 --> 00:06:44,030
‫solicitud nuevamente, y ahora está de regreso.

127
00:06:44,030 --> 00:06:45,403
‫Tenemos nuestra ruta de

128
00:06:48,220 --> 00:06:51,510
‫publicación configurada, está funcionando ahora y también tenemos acceso al cuerpo, por

129
00:06:51,510 --> 00:06:53,810
‫lo que lo que queremos hacer ahora es

130
00:06:53,810 --> 00:06:56,830
‫conservar esos datos en este archivo JSON simple de recorrido.

131
00:06:56,830 --> 00:07:00,680
‫De hecho, vamos a modificar este archivo para que los datos

132
00:07:00,680 --> 00:07:04,090
‫se guarden en nuestra base de datos ficticia aquí.

133
00:07:04,090 --> 00:07:07,500
‫Este archivo JSON en este momento funciona como

134
00:07:07,500 --> 00:07:09,820
‫nuestra base de datos ficticia.

135
00:07:09,820 --> 00:07:11,623
‫Así que ahora ocupémonos de eso.

136
00:07:12,850 --> 00:07:15,810
‫Voy a seguir adelante y comentar esto.

137
00:07:15,810 --> 00:07:18,063
‫Entonces empecemos.

138
00:07:19,250 --> 00:07:20,650
‫Lo primero que debemos

139
00:07:20,650 --> 00:07:23,440
‫hacer es averiguar la identificación del nuevo objeto.

140
00:07:23,440 --> 00:07:25,240
‫Recuerde, nuevamente en la conferencia

141
00:07:25,240 --> 00:07:28,720
‫sobre las API REST, es que cuando creamos un nuevo objeto,

142
00:07:28,720 --> 00:07:30,570
‫nunca especificamos la identificación del objeto.

143
00:07:30,570 --> 00:07:33,200
‫La base de datos generalmente se encarga de eso.

144
00:07:33,200 --> 00:07:35,623
‫Un nuevo objeto generalmente obtiene automáticamente su nueva identificación.

145
00:07:36,980 --> 00:07:40,470
‫Bueno, en este caso, no tenemos ninguna base de datos, así que

146
00:07:40,470 --> 00:07:42,840
‫lo que vamos a hacer es simplemente tomar

147
00:07:42,840 --> 00:07:46,020
‫la identificación del último objeto y luego agregar +1 a eso.

148
00:07:46,020 --> 00:07:48,833
‫Hagámoslo muy rápido, y eso es solo

149
00:07:50,020 --> 00:07:51,010
‫JavaScript básico.

150
00:07:51,010 --> 00:07:53,440
‫Tan nuevoId son giras, ¿verdad?

151
00:07:53,440 --> 00:07:57,740
‫Recuerda que tours, ya tenemos los datos

152
00:07:57,740 --> 00:08:01,160
‫en esta variable tours.

153
00:08:01,160 --> 00:08:02,673
‫Así que esa es una

154
00:08:03,800 --> 00:08:06,500
‫matriz de todos los objetos de recorrido, por lo que

155
00:08:06,500 --> 00:08:08,313
‫queremos obtener el último, que es recorridos. length - 1, luego la

156
00:08:09,150 --> 00:08:13,410
‫propiedad id de eso y agregamos + 1.

157
00:08:13,410 --> 00:08:17,220
‫Entonces esa es la nueva identificación.

158
00:08:17,220 --> 00:08:18,823
‫A continuación, creamos un nuevo

159
00:08:21,533 --> 00:08:23,033
‫recorrido, y ese recorrido

160
00:08:23,950 --> 00:08:28,070
‫será básicamente el cuerpo que enviamos más la nueva identificación que acabamos de crear.

161
00:08:28,070 --> 00:08:30,863
‫Entonces podemos usar object. asignar, que básicamente nos

162
00:08:31,950 --> 00:08:36,730
‫permite crear un

163
00:08:36,730 --> 00:08:40,070
‫nuevo objeto fusionando dos objetos existentes.

164
00:08:40,070 --> 00:08:41,130
‫Entonces, el

165
00:08:41,130 --> 00:08:43,300
‫primer objeto será id =

166
00:08:43,300 --> 00:08:44,920
‫newId, y luego queremos

167
00:08:48,270 --> 00:08:49,200
‫request. cuerpo.

168
00:08:51,140 --> 00:08:52,353
‫También podríamos haber hecho req. cuerpo. id = newId,

169
00:08:54,330 --> 00:08:58,730
‫pero no quería mutar el objeto del cuerpo original.

170
00:09:00,250 --> 00:09:03,503
‫Lo dejé así.

171
00:09:04,740 --> 00:09:06,323
‫Esa es la nueva gira, y

172
00:09:08,564 --> 00:09:11,720
‫ahora lo que queremos hacer es llevar esta gira al conjunto de recorridos, ¿verdad?

173
00:09:11,720 --> 00:09:16,120
‫Entonces, recorridos, es la variedad de los nueve recorridos

174
00:09:16,120 --> 00:09:19,130
‫que tenemos en este momento.

175
00:09:19,130 --> 00:09:20,330
‫Decimos empujar y empujar la nueva gira allí.

176
00:09:20,330 --> 00:09:25,163
‫Esa es la matriz que ahora tiene el nuevo recorrido, pero, por

177
00:09:27,880 --> 00:09:31,500
‫supuesto, ahora tenemos que persistir en el archivo.

178
00:09:31,500 --> 00:09:35,110
‫De nuevo, eso es bastante fácil para ti en

179
00:09:35,110 --> 00:09:37,855
‫este punto, así que usa fs. escribir archivo.

180
00:09:37,855 --> 00:09:41,840
‫Entonces, ¿cuál deberíamos usar?

181
00:09:41,840 --> 00:09:43,390
‫writeFile o writeFileSync?

182
00:09:43,390 --> 00:09:46,540
‫La respuesta es muy simple.

183
00:09:47,570 --> 00:09:50,070
‫Estamos dentro de una función de devolución de llamada, que

184
00:09:50,070 --> 00:09:52,010
‫se ejecutará en el ciclo de eventos.

185
00:09:52,010 --> 00:09:54,430
‫Nunca, nunca podremos bloquear el ciclo de eventos.

186
00:09:54,430 --> 00:09:57,180
‫Lo que vamos a hacer es

187
00:09:57,180 --> 00:10:00,030
‫usar writeFile y no sincronizar en este.

188
00:10:00,030 --> 00:10:01,720
‫Queremos pasar una función de devolución de

189
00:10:01,720 --> 00:10:03,820
‫llamada que se procesará en segundo plano y,

190
00:10:03,820 --> 00:10:05,800
‫tan pronto como esté lista, pondrá su evento

191
00:10:05,800 --> 00:10:07,160
‫en una de las

192
00:10:07,160 --> 00:10:10,810
‫colas de bucle de eventos, que luego se manejará tan pronto como el bucle

193
00:10:10,810 --> 00:10:12,180
‫de eventos pasa esa fase.

194
00:10:12,180 --> 00:10:14,760
‫¿Recuerdas eso de la conferencia Event Loop?

195
00:10:14,760 --> 00:10:17,360
‫De todos modos, obtengamos el nombre

196
00:10:17,360 --> 00:10:21,080
‫del archivo desde aquí, porque realmente anularemos este archivo

197
00:10:21,080 --> 00:10:23,650
‫para que cuando reiniciemos este

198
00:10:23,650 --> 00:10:25,270
‫servidor, esté allí.

199
00:10:25,270 --> 00:10:26,823
‫Entonces,

200
00:10:28,040 --> 00:10:30,101
‫¿dónde? Aquí mismo.

201
00:10:30,101 --> 00:10:31,018
‫Entonces ese es el archivo en el que queremos escribir.

202
00:10:31,937 --> 00:10:35,246
‫Los datos que queremos escribir, que son tours, y luego

203
00:10:35,246 --> 00:10:37,733
‫nuestra función call-back, que en este caso

204
00:10:39,040 --> 00:10:40,760
‫solo tiene el error.

205
00:10:40,760 --> 00:10:43,203
‫Aquí acabo de notar

206
00:10:46,040 --> 00:10:49,890
‫que también necesitamos secuenciar este objeto, ¿verdad?

207
00:10:49,890 --> 00:10:51,580
‫Queremos json en este archivo

208
00:10:51,580 --> 00:10:53,680
‫JSON, y este en este momento es

209
00:10:53,680 --> 00:10:57,020
‫solo un objeto JavaScript normal y simple, por lo que debemos convertirlo.

210
00:10:57,020 --> 00:10:58,580
‫Pero eso es nuevamente simple, ya lo hice.

211
00:10:58,580 --> 00:11:02,320
‫JSON. stringify del objeto.

212
00:11:05,510 --> 00:11:06,343
‫¿Qué queremos hacer tan pronto como se escriba el archivo?

213
00:11:07,930 --> 00:11:11,760
‫Bueno, lo que solemos hacer es enviar el objeto recién

214
00:11:11,760 --> 00:11:13,340
‫creado como respuesta.

215
00:11:13,340 --> 00:11:16,683
‫Vamos a hacer eso.

216
00:11:17,670 --> 00:11:18,600
‫Entonces respuesta,

217
00:11:18,600 --> 00:11:21,650
‫y luego, como siempre, comenzamos especificando el código de estado.

218
00:11:21,650 --> 00:11:23,340
‫En este caso, no será un 200, sino un 201.

219
00:11:23,340 --> 00:11:26,483
‫Entonces 201 que significa creado.

220
00:11:27,400 --> 00:11:30,190
‫200 significa bien, 201 significa

221
00:11:30,190 --> 00:11:34,090
‫creado, que es exactamente lo que sucedió aquí.

222
00:11:34,090 --> 00:11:36,260
‫Creamos un nuevo recurso en un servidor.

223
00:11:36,260 --> 00:11:38,513
‫Entonces JSON, y sigue agregando este mensaje aquí.

224
00:11:41,260 --> 00:11:45,873
‫El estado es nuevamente el éxito.

225
00:11:48,240 --> 00:11:50,993
‫No estoy usando la propiedad de resultados

226
00:11:52,500 --> 00:11:56,770
‫aquí, que teníamos antes, porque ahora solo estoy enviando un resultado.

227
00:11:56,770 --> 00:11:59,263
‫Los datos son nuestro sobre aquí.

228
00:12:00,651 --> 00:12:02,203
‫Tour es nuevo tour.

229
00:12:04,100 --> 00:12:09,100
‫¡Eso es todo!

230
00:12:09,230 --> 00:12:10,063
‫Guárdelo aquí,

231
00:12:10,063 --> 00:12:12,660
‫y así formatee, o codifique un poco.

232
00:12:12,660 --> 00:12:14,260
‫Agreguemos más espacio aquí.

233
00:12:14,260 --> 00:12:15,933
‫Creo que estamos listos para intentarlo ahora.

234
00:12:18,480 --> 00:12:20,533
‫De hecho, podemos crear un nuevo recorrido utilizando estos datos aquí.

235
00:12:23,180 --> 00:12:26,273
‫Así que ajuste este Tour de prueba, y

236
00:12:28,600 --> 00:12:30,440
‫con estos datos, esperemos.

237
00:12:30,440 --> 00:12:32,540
‫¿Que pasó aquí?

238
00:12:33,670 --> 00:12:34,620
‫Veamos, está bien.

239
00:12:35,780 --> 00:12:37,000
‫Tenemos un problema de que enviamos una respuesta dos veces básicamente.

240
00:12:37,000 --> 00:12:40,733
‫Entonces enviamos una respuesta con JSON

241
00:12:40,733 --> 00:12:43,320
‫y luego nuevamente con. enviar.

242
00:12:43,320 --> 00:12:45,530
‫Eso no está permitido.

243
00:12:45,530 --> 00:12:46,620
‫En realidad, es por eso que obtenemos este error aquí.

244
00:12:46,620 --> 00:12:48,990
‫Así que es realmente bueno que haya sucedido aquí, para que sepa

245
00:12:48,990 --> 00:12:50,622
‫lo que significa este error estándar aquí.

246
00:12:50,622 --> 00:12:54,871
‫HTTP_HEADERS_SENT no puede establecer encabezados después de

247
00:12:54,871 --> 00:12:58,330
‫que se envían al cliente.

248
00:12:58,330 --> 00:12:59,163
‫Eso sucede cuando intentas enviar dos respuestas.

249
00:12:59,163 --> 00:13:02,483
‫Necesitamos deshacernos de eso.

250
00:13:04,642 --> 00:13:06,540
‫Sí, ese fue el único error que tuvimos.

251
00:13:10,030 --> 00:13:12,163
‫Eso debería solucionarlo ahora.

252
00:13:14,350 --> 00:13:16,390
‫Darle una oportunidad.

253
00:13:16,390 --> 00:13:17,313
‫Y de hecho, aquí vamos.

254
00:13:19,410 --> 00:13:21,190
‫Entonces tenemos nuestra identificación de

255
00:13:21,190 --> 00:13:24,941
‫10, que nuestro código creó para nosotros, y luego el recorrido completo,

256
00:13:24,941 --> 00:13:28,930
‫que son exactamente los datos que enviamos como un cuerpo en nuestra solicitud.

257
00:13:28,930 --> 00:13:32,353
‫Ahora bien, la cuestión es que cuando tengamos

258
00:13:33,850 --> 00:13:36,900
‫todos los recorridos aquí, todavía no aparecerán.

259
00:13:36,900 --> 00:13:38,363
‫Si bajamos aquí, en realidad

260
00:13:39,480 --> 00:13:40,933
‫ya está aquí.

261
00:13:42,520 --> 00:13:44,770
‫Tenemos el de antes, así que cuando tuvimos ese

262
00:13:44,770 --> 00:13:46,984
‫error, en realidad también creó este tour aquí.

263
00:13:46,984 --> 00:13:50,830
‫Luego, por supuesto, el tour que creamos con el id de 10.

264
00:13:50,830 --> 00:13:54,000
‫Así que este tour aquí es exactamente este

265
00:13:54,000 --> 00:13:56,180
‫que se creó ahora mismo.

266
00:13:56,180 --> 00:13:57,530
‫Si lo hacemos ahora, Test Tour 2, con la duración de tan solo 5.

267
00:13:58,370 --> 00:14:03,370
‫Probemos este, y si consigo todos los recorridos, entonces eso también

268
00:14:03,890 --> 00:14:05,580
‫se muestra aquí.

269
00:14:05,580 --> 00:14:10,550
‫Dije al principio que no funcionaría, por lo que no aparecería de

270
00:14:10,550 --> 00:14:12,246
‫inmediato, porque esto

271
00:14:12,246 --> 00:14:14,760
‫solo funciona si reiniciamos el servidor.

272
00:14:14,760 --> 00:14:19,913
‫Este archivo, el tour-simple.

273
00:14:21,480 --> 00:14:23,610
‫json de donde provienen nuestros recorridos,

274
00:14:23,610 --> 00:14:25,140
‫solo se lee al principio cuando iniciamos el servidor.

275
00:14:25,140 --> 00:14:28,819
‫Ahora bien, cada vez que guardamos algo en este archivo

276
00:14:28,819 --> 00:14:31,420
‫JSON, también se recargará el servidor.

277
00:14:31,420 --> 00:14:35,180
‫Déjame demostrarte eso, así que si presiono ahora guardar,

278
00:14:35,180 --> 00:14:38,160
‫mira lo que sucede aquí abajo.

279
00:14:38,160 --> 00:14:40,800
‫Así que lo guardo, y para que vea

280
00:14:40,800 --> 00:14:43,180
‫que aquí abajo reinició el servidor.

281
00:14:43,180 --> 00:14:44,980
‫También formateó el código, porque era más bonito.

282
00:14:44,980 --> 00:14:47,920
‫Pero lo que importa aquí, es que este código actualizado.

283
00:14:47,920 --> 00:14:50,970
‫Es por eso que cada vez que guardamos algo

284
00:14:50,970 --> 00:14:52,780
‫aquí con nuestra API, este

285
00:14:52,780 --> 00:14:56,160
‫volverá a cargar inmediatamente el servidor y volverá a cargar

286
00:14:56,160 --> 00:15:00,230
‫el contenido del archivo en los recorridos, y luego podremos leerlo de inmediato.

287
00:15:00,230 --> 00:15:02,080
‫Es por eso que

288
00:15:03,020 --> 00:15:06,400
‫tenemos acceso inmediato a todos los tours recién creados.

289
00:15:06,400 --> 00:15:08,563
‫¿Tener sentido?

290
00:15:09,660 --> 00:15:10,550
‫Bueno, si no, no

291
00:15:10,550 --> 00:15:13,970
‫dude en hacer sus preguntas y, por supuesto, en la sección de preguntas y respuestas, ¿verdad?

