﻿1
00:00:01,290 --> 00:00:03,700
‫Dopo aver ricevuto e pubblicato, impariamo tutti a

2
00:00:03,700 --> 00:00:05,320
‫gestire le richieste di

3
00:00:05,320 --> 00:00:07,273
‫patch per aggiornare effettivamente i dati.

4
00:00:08,350 --> 00:00:10,420
‫E sono abbastanza sicuro che a questo punto

5
00:00:10,420 --> 00:00:11,960
‫tu abbia già una buona idea

6
00:00:11,960 --> 00:00:13,460
‫di come lo faremo.

7
00:00:14,670 --> 00:00:16,853
‫Quindi facciamolo dopo il post,

8
00:00:18,260 --> 00:00:19,653
‫quindi quaggiù, e ricorda

9
00:00:20,840 --> 00:00:24,150
‫che in realtà abbiamo due metodi http per aggiornare

10
00:00:24,150 --> 00:00:25,400
‫i dati.

11
00:00:25,400 --> 00:00:27,690
‫Abbiamo messo e abbiamo patch.

12
00:00:27,690 --> 00:00:30,580
‫E con put ci aspettiamo che

13
00:00:30,580 --> 00:00:33,770
‫la nostra applicazione riceva l'intero nuovo oggetto aggiornato

14
00:00:33,770 --> 00:00:36,854
‫e con patch ci aspettiamo solo le

15
00:00:36,854 --> 00:00:40,670
‫proprietà che dovrebbero essere effettivamente aggiornate sull'oggetto, va bene?

16
00:00:40,670 --> 00:00:42,540
‫Quindi, di solito, mi piace

17
00:00:42,540 --> 00:00:46,290
‫usare patch, perché trovo più semplice aggiornare semplicemente le proprietà

18
00:00:46,290 --> 00:00:47,950
‫che sono state aggiornate.

19
00:00:47,950 --> 00:00:51,000
‫Almeno, quando inizieremo a usare MongoDB

20
00:00:51,000 --> 00:00:54,690
‫e Mongoose, sarà molto più semplice farlo così, ok?

21
00:00:54,690 --> 00:00:56,410
‫Ed è anche più

22
00:00:56,410 --> 00:00:58,850
‫semplice per l'utente inviare semplicemente i dati che

23
00:00:58,850 --> 00:01:01,723
‫stanno cambiando, invece di dover inviare l'intero nuovo oggetto.

24
00:01:02,640 --> 00:01:05,000
‫Quindi, di nuovo, faremo funzionare la nostra app

25
00:01:05,000 --> 00:01:07,033
‫per patch e non per put.

26
00:01:08,100 --> 00:01:12,460
‫Quindi ci aspettiamo che arrivi una richiesta di patch

27
00:01:13,335 --> 00:01:18,335
‫sull'URL proprio come prima, "api/v1/tours", e ora in realtà abbiamo

28
00:01:19,760 --> 00:01:22,490
‫anche bisogno dell'ID del tour

29
00:01:22,490 --> 00:01:24,910
‫che dovrebbe essere aggiornato.

30
00:01:24,910 --> 00:01:27,610
‫E quindi questo è slash e poi "id. "Va bene,

31
00:01:27,610 --> 00:01:30,853
‫questo è quello che abbiamo imparato nell'ultima lezione.

32
00:01:33,510 --> 00:01:36,830
‫Quindi, cosa vogliamo fare quando c'è una richiesta di patch,

33
00:01:36,830 --> 00:01:39,260
‫quindi quando vogliamo aggiornare i dati?

34
00:01:39,260 --> 00:01:41,400
‫Bene, in realtà, non implementerò davvero

35
00:01:41,400 --> 00:01:44,160
‫questa operazione qui, perché è solo questione di

36
00:01:44,160 --> 00:01:45,750
‫scrivere altro JavaScript

37
00:01:45,750 --> 00:01:47,670
‫che non è molto importante,

38
00:01:47,670 --> 00:01:52,070
‫perché, di nuovo, si tratta solo di testare file che utilizzano API.

39
00:01:52,070 --> 00:01:54,870
‫Nel mondo reale, comunque, non useremo mai i

40
00:01:54,870 --> 00:01:56,280
‫file per quello, ok.

41
00:01:56,280 --> 00:01:59,020
‫Quindi, sto solo implementando tutti questi verbi qui

42
00:01:59,020 --> 00:02:01,840
‫in modo che tu abbia una buona idea

43
00:02:01,840 --> 00:02:03,405
‫dei diversi verbi

44
00:02:03,405 --> 00:02:06,730
‫che usiamo con http, il tipo di codici di stato

45
00:02:06,730 --> 00:02:10,220
‫che inviamo indietro, ad esempio, qui abbiamo inviato 201, mentre

46
00:02:10,220 --> 00:02:13,720
‫qui abbiamo inviato 200 e 400, e anche per esempio,

47
00:02:13,720 --> 00:02:16,410
‫qui, quando abbiamo avuto più tour, abbiamo

48
00:02:16,410 --> 00:02:19,343
‫inviato i risultati, e quando abbiamo creato un

49
00:02:20,370 --> 00:02:24,170
‫nuovo tour, abbiamo inviato indietro quei dati immediatamente, con questo nuovo

50
00:02:24,170 --> 00:02:28,020
‫tour che è stato creato, e quindi questo è il genere

51
00:02:28,020 --> 00:02:30,410
‫di cose che voglio che tu impari

52
00:02:30,410 --> 00:02:32,290
‫per ora, in questa sezione.

53
00:02:32,290 --> 00:02:35,600
‫Quindi le basi per lavorare con Express, ovviamente,

54
00:02:35,600 --> 00:02:39,270
‫e anche il modo corretto di inviare le risposte

55
00:02:39,270 --> 00:02:42,960
‫API, ok, e quindi, di nuovo, non implementerò l'aggiornamento di

56
00:02:42,960 --> 00:02:45,540
‫tour qui, perché sarebbe molto

57
00:02:45,540 --> 00:02:49,059
‫di lavoro, dovresti ottenere il tour dal file JSON,

58
00:02:49,059 --> 00:02:53,360
‫quindi modificare quel tour e quindi salvarlo di nuovo nel file.

59
00:02:53,360 --> 00:02:55,370
‫E questo è un po'

60
00:02:55,370 --> 00:02:57,130
‫troppo lavoro qui,

61
00:02:57,130 --> 00:02:59,690
‫quindi usciamo e rimandiamo una risposta standard.

62
00:02:59,690 --> 00:03:04,517
‫Quindi "risposta. status" e utilizzeremo ancora

63
00:03:05,720 --> 00:03:08,100
‫200 qui, quindi quando

64
00:03:08,100 --> 00:03:10,910
‫aggiorniamo un oggetto o una

65
00:03:10,910 --> 00:03:12,603
‫risorsa, inviamo

66
00:03:13,532 --> 00:03:16,210
‫200, okay, e poi il

67
00:03:18,810 --> 00:03:22,453
‫solito JSON con lo stato di successo.

68
00:03:24,190 --> 00:03:26,890
‫E poi inviamo i dati e, in questo caso,

69
00:03:26,890 --> 00:03:28,163
‫il tour aggiornato.

70
00:03:30,650 --> 00:03:33,360
‫Quindi diciamo "tour" e poi qui,

71
00:03:33,360 --> 00:03:36,880
‫in questa posizione, rimandiamo il tour aggiornato, ok.

72
00:03:36,880 --> 00:03:40,933
‫In questo momento, manderò indietro una stringa che dice

73
00:03:43,677 --> 00:03:46,650
‫"tour aggiornato qui... ," qualcosa come questo.

74
00:03:46,650 --> 00:03:48,950
‫Quindi, in pratica, solo un segnaposto qui.

75
00:03:48,950 --> 00:03:53,720
‫E possiamo anche implementare questo codice qui, quindi per

76
00:03:53,720 --> 00:03:57,490
‫inviarlo solo quando l'ID è effettivamente

77
00:03:57,490 --> 00:04:01,590
‫valido, quindi prendiamolo da qui, e quindi

78
00:04:01,590 --> 00:04:06,590
‫in questo modo, possiamo anche usare effettivamente questo ID qui.

79
00:04:06,790 --> 00:04:07,623
‫Destra.

80
00:04:08,890 --> 00:04:10,440
‫Quindi non faremo

81
00:04:10,440 --> 00:04:13,653
‫questo perché non abbiamo nessun tour, ma useremo questo.

82
00:04:15,060 --> 00:04:20,040
‫Quindi questo sarà "req. parametri. id", e lo

83
00:04:20,040 --> 00:04:24,410
‫sto convertendo in un numero anche qui, per 1, e se è

84
00:04:24,410 --> 00:04:27,230
‫maggiore della lunghezza del tour, beh, proprio

85
00:04:27,230 --> 00:04:29,980
‫come prima, è un ID non valido

86
00:04:29,980 --> 00:04:33,000
‫e inviamo un 404, per non trovato .

87
00:04:33,000 --> 00:04:36,283
‫E così in questo modo, ora dovremmo essere pronti per testarlo.

88
00:04:38,560 --> 00:04:41,740
‫Quindi, prima di tutto salviamo la richiesta che abbiamo

89
00:04:41,740 --> 00:04:43,540
‫fatto nella lezione precedente.

90
00:04:45,510 --> 00:04:48,667
‫Quindi, basta "Fai il tour. "E vado

91
00:04:50,120 --> 00:04:53,163
‫avanti e copio questo qui.

92
00:04:58,100 --> 00:05:02,190
‫E specifichiamo il metodo patch.

93
00:05:02,190 --> 00:05:05,580
‫Quindi questa è la patch e la salverò subito qui come "Tour di

94
00:05:08,347 --> 00:05:09,427
‫aggiornamento. "Va

95
00:05:11,180 --> 00:05:14,250
‫bene, e vedete che questo qui ottiene questo testo

96
00:05:14,250 --> 00:05:16,770
‫grigio, quindi sono molto facili da distinguere

97
00:05:16,770 --> 00:05:18,623
‫qui in questa colonna laterale.

98
00:05:20,330 --> 00:05:24,100
‫Quindi in realtà dovremmo specificare un corpo qui, quindi

99
00:05:24,100 --> 00:05:26,350
‫andiamo avanti e copiarlo da

100
00:05:29,300 --> 00:05:34,300
‫qui, quindi ricorda, corpo, raw e poi JSON, proprio come questo, e

101
00:05:34,506 --> 00:05:35,653
‫quindi, diciamo

102
00:05:36,600 --> 00:05:39,150
‫che tutto ciò che voglio fare

103
00:05:39,150 --> 00:05:42,733
‫è cambiare il tour numero tre, diciamo, quindi diamo

104
00:05:43,600 --> 00:05:47,320
‫un'occhiata a quello, quindi, uno, due, tre, e voglio

105
00:05:47,320 --> 00:05:49,570
‫cambiare la durata a quindici.

106
00:05:53,330 --> 00:05:55,133
‫Va bene. Salvarlo di nuovo.

107
00:05:56,410 --> 00:05:57,940
‫Salverò anche questo, perché

108
00:05:57,940 --> 00:06:01,910
‫allora salverà effettivamente questo testo qui in un corpo, e se lo chiudo

109
00:06:01,910 --> 00:06:04,770
‫e lo riapro più tardi, allora tutto questo testo

110
00:06:04,770 --> 00:06:06,730
‫qui è tornato, e questo renderà

111
00:06:06,730 --> 00:06:09,083
‫la mia vita molto più facile allora.

112
00:06:10,450 --> 00:06:12,410
‫Ok, ma comunque, torniamo a questo.

113
00:06:12,410 --> 00:06:14,270
‫Impostiamo la durata a quindici.

114
00:06:14,270 --> 00:06:16,100
‫Ora, tieni presente che

115
00:06:16,100 --> 00:06:18,030
‫questo ovviamente non cambierà nulla

116
00:06:18,030 --> 00:06:20,417
‫nei dati perché non l'abbiamo implementato.

117
00:06:20,417 --> 00:06:23,980
‫Ok, mando subito la risposta.

118
00:06:23,980 --> 00:06:27,808
‫E così, qui vediamo "updated_tour_here... ," proprio nel

119
00:06:27,808 --> 00:06:30,070
‫punto in cui nel

120
00:06:30,070 --> 00:06:33,130
‫mondo reale otterremmo i dati aggiornati.

121
00:06:33,130 --> 00:06:36,083
‫Giusto, solo per testarlo con un ID sbagliato, otteniamo questo "fallito"

122
00:06:37,050 --> 00:06:40,160
‫e questo "ID non valido. "Va

123
00:06:40,160 --> 00:06:43,750
‫bene, quindi salvalo e chiudilo,

124
00:06:43,750 --> 00:06:46,870
‫e chiuderò anche questo.

125
00:06:46,870 --> 00:06:50,830
‫Ok, ho quasi finito con le operazioni CRUD, quindi

126
00:06:50,830 --> 00:06:54,864
‫crea, leggi, aggiorna ed elimina e, come puoi sentire, l'ultimo

127
00:06:54,864 --> 00:06:57,560
‫che manca è l'eliminazione, quindi ce

128
00:06:57,560 --> 00:07:00,010
‫ne occuperemo nel prossimo video.

