1
00:00:00,420 --> 00:00:06,810
Bentornata in questa lezione, riprenderemo da dove abbiamo interrotto il codice di autenticazione, non solo

2
00:00:06,810 --> 00:00:07,740
il codice.

3
00:00:07,960 --> 00:00:09,000
Non hai mai codice da solo.

4
00:00:09,060 --> 00:00:10,000
Mi hai qui.

5
00:00:10,230 --> 00:00:12,520
Quindi codice lungo la parte 3.

6
00:00:12,690 --> 00:00:15,040
Ora arriviamo alla carne dell'autenticazione.

7
00:00:15,090 --> 00:00:20,430
Inizieremo con l'aggiungere queste rotte di registrazione dei percorsi di registrazione e il modulo di registrazione e assicurandoci che entro

8
00:00:20,430 --> 00:00:24,440
la fine di questo video dovremmo essere in grado di registrarci per la nostra applicazione.

9
00:00:24,480 --> 00:00:25,740
Non saremo in grado di uscire.

10
00:00:25,890 --> 00:00:28,400
Non saremo in grado di accedere ma potremo registrarci.

11
00:00:28,740 --> 00:00:29,490
OK.

12
00:00:30,000 --> 00:00:31,160
Quindi iniziamo.

13
00:00:31,170 --> 00:00:34,480
La prima cosa di cui dobbiamo discutere sono i percorsi che dobbiamo aggiungere.

14
00:00:34,530 --> 00:00:39,060
E prima di farlo aggiungerò un piccolo divisore qui perché abbiamo

15
00:00:39,060 --> 00:00:46,250
un sacco di contenuti in alto che dice solo percorsi che farò con un piccolo segno di uguale.

16
00:00:46,500 --> 00:00:49,790
Giusto per chiarire che tutti i percorsi vanno sotto questa linea.

17
00:00:49,800 --> 00:00:50,560
OK.

18
00:00:50,910 --> 00:00:54,620
Quindi abbiamo il nostro slash e abbiamo la rotta segreta.

19
00:00:55,050 --> 00:01:00,630
Ora qui sotto aggiungiamo nella nostra Auth. percorsi per rivedere i percorsi di cui abbiamo bisogno.

20
00:01:00,780 --> 00:01:05,940
In realtà andrò alla versione di lavoro di questa splendida home page e

21
00:01:05,940 --> 00:01:11,700
poi quando clicchi sul registro noti che l'URL è slash register e vediamo un modulo.

22
00:01:11,820 --> 00:01:17,640
Quindi abbiamo un registro della barra del percorso di acquisizione che ci mostrerà il modulo per registrarci

23
00:01:17,640 --> 00:01:25,360
e quindi se ispezioneremo questo modulo vedremo che sta inviando una richiesta di posta per tagliare il registro del registro delle barre.

24
00:01:25,980 --> 00:01:28,100
Non dobbiamo chiamarlo registro della barra.

25
00:01:28,110 --> 00:01:31,330
Vedrai cose come iscrizione o registrazione.

26
00:01:31,380 --> 00:01:35,530
Può essere qualunque cosa tu voglia, ma registrarsi fa bene a noi.

27
00:01:35,670 --> 00:01:36,830
Quindi torneremo al nostro apt.

28
00:01:36,850 --> 00:01:37,390
Sì.

29
00:01:37,500 --> 00:01:43,570
E abbiamo bisogno di aggiungere questi due percorsi e inizierò con un'app non ottenere il registro della barra.

30
00:01:43,650 --> 00:01:47,550
E ancora il punto di questo è solo per mostrare la forma.

31
00:01:47,550 --> 00:01:50,530
Quindi mostra il modulo di iscrizione.

32
00:01:51,040 --> 00:01:51,590
OK.

33
00:01:51,720 --> 00:01:59,700
Quindi apt ottiene il registro slash e quindi la nostra callback qui richiesta e risposta proprio così e faremo

34
00:01:59,700 --> 00:02:07,200
il redstart render e chiameremo il suo template register e quindi la prossima cosa logica da fare sarebbe

35
00:02:07,200 --> 00:02:09,400
creare il modulo di registrazione.

36
00:02:09,540 --> 00:02:13,480
Quindi faremo un registro slash delle visualizzazioni touch.

37
00:02:13,620 --> 00:02:22,740
E. J. Sì e poi apriremo lo stesso file e all'interno di

38
00:02:22,740 --> 00:02:28,010
qui inizieremo con un semplice, diciamo solo il modulo di registrazione e salviamo, assicuriamoci di poterlo vedere.

39
00:02:28,260 --> 00:02:32,660
Quindi avvia il server, quindi andremo alla nostra app qui.

40
00:02:33,180 --> 00:02:35,330
Torna al percorso root per iniziare.

41
00:02:35,580 --> 00:02:40,800
E ora andiamo al registro slash e ti iscriviamo a lui.

42
00:02:40,800 --> 00:02:41,610
Grande.

43
00:02:41,610 --> 00:02:47,930
Ora aggiungiamo un forum e il nostro modulo deve avere due input uno per username uno per password.

44
00:02:48,090 --> 00:02:53,070
Quindi inizieremo definendo un modulo e torneremo indietro e aggiungeremo il metodo in azione.

45
00:02:53,100 --> 00:02:54,760
Inizieremo con un input.

46
00:02:55,140 --> 00:03:01,200
Entrambi sono testo digitato anche se possiamo rendere il tipo di input della password uguale a password che è

47
00:03:01,200 --> 00:03:02,310
in realtà un'idea migliore.

48
00:03:02,310 --> 00:03:12,510
così e poi lo duplicherò e inserirò il tipo di input perché password e segnaposto saranno password e salvati.

49
00:03:13,200 --> 00:03:21,040
Quindi, il tipo di input va al segnaposto del testo equivale al nome utente proprio

50
00:03:21,360 --> 00:03:28,380
E poi aggiungiamo una submission e possiamo o fare il tipo di input equivale a submit o.

51
00:03:28,840 --> 00:03:29,280
O.

52
00:03:29,340 --> 00:03:31,200
Preferisco un tag button.

53
00:03:31,710 --> 00:03:34,820
Ognuno funzionerà finché il pulsante si trova alla fine del modulo.

54
00:03:34,860 --> 00:03:36,580
Invierà automaticamente il modulo.

55
00:03:36,870 --> 00:03:37,140
OK.

56
00:03:37,140 --> 00:03:42,990
password e possiamo iniziare dando solo un'occhiata a questo e vediamo il nostro modulo ma ci mancano due cose cruciali.

57
00:03:42,990 --> 00:03:48,300
Quindi invia e poi abbiamo il nostro tipo di input perché il tipo di input di testo diventa

58
00:03:48,300 --> 00:03:53,940
Prima di tutto il modulo non va da nessuna parte e, anche se è stato inviato da qualche parte, non

59
00:03:53,940 --> 00:03:57,360
invierebbe nessuno di questi elementi perché non abbiamo gli attributi del nome.

60
00:03:57,450 --> 00:04:09,000
Quindi abbiamo bisogno di aggiungere il nome uguale al nome utente e il nome equivale alla password proprio così e salveremo.

61
00:04:09,000 --> 00:04:14,590
Ora, se diamo un'occhiata al modulo, nulla dovrebbe apparire diverso ma ora è quasi pronto.

62
00:04:14,760 --> 00:04:17,410
Ora dobbiamo aggiungere le informazioni per il tag del modulo.

63
00:04:17,540 --> 00:04:20,380
Oppure abbiamo azione e metodo.

64
00:04:20,400 --> 00:04:24,720
Quindi l'azione sarà anche registratore di cassa.

65
00:04:24,900 --> 00:04:29,430
Ma lo invieremo come richiesta di posta e non abbiamo ancora quella rotta.

66
00:04:29,640 --> 00:04:34,830
Quindi se andassi a compilare il modulo in questo momento, se aggiornassi e riempissi il modulo,

67
00:04:34,950 --> 00:04:40,380
questo si bloccava e alla fine scadeva perché non abbiamo un registro di slittamento post-road e questo

68
00:04:40,440 --> 00:04:46,710
può essere chiamato, ovviamente, ma è convenzionale chiamarlo allo stesso modo del registro della barra di scorrimento della corsa.

69
00:04:46,770 --> 00:04:54,750
Quindi facciamo la stessa cosa e questa rotta sarebbe effettivamente responsabile per la gestione degli

70
00:04:54,750 --> 00:05:02,820
utenti registrati e faremo una richiesta di registrazione della funzione di registrazione della barra delle applicazioni.

71
00:05:02,820 --> 00:05:06,000
E qui aggiungeremo tutta la logica per iniziare.

72
00:05:06,000 --> 00:05:07,980
assicurarsi che sia collegato OK.

73
00:05:11,000 --> 00:05:14,930
Faremo solo un bel riposo e registreremo post-trib solo per

74
00:05:15,120 --> 00:05:23,000
E se riavviamo il server e torniamo, aggiorna la pagina, compila alcuni dati casuali e premi invio.

75
00:05:23,060 --> 00:05:25,500
Dovremmo vedere la bozza di post registrata.

76
00:05:25,660 --> 00:05:26,380
Eccoci.

77
00:05:26,510 --> 00:05:29,120
Ciò significa che il nostro modulo si sta presentando nel posto giusto.

78
00:05:29,120 --> 00:05:35,300
Lo stiamo colpendo ora, arriviamo alla parte divertente che è dove effettivamente gestiamo l'utente iscrivendoti a circa

79
00:05:35,310 --> 00:05:38,320
10 nuove linee che non hai visto di più.

80
00:05:38,880 --> 00:05:43,550
Quindi inizierò scrivendo la sintassi e poi interromperò e analizzerò ogni riga e cosa fa.

81
00:05:43,620 --> 00:05:48,590
E la prima cosa che dobbiamo effettivamente fare quale revisione è che dobbiamo aggiungere il parser nel corpo

82
00:05:48,590 --> 00:05:51,210
e configurarlo perché stiamo prendendo i dati da un modulo.

83
00:05:51,200 --> 00:05:55,990
Questo modulo sta inviando dati nel corpo e vogliamo essere in grado di dire la richiesta sul corpo.

84
00:05:56,020 --> 00:05:59,090
Usa il tuo nome per la password di Quest up Vadi.

85
00:05:59,250 --> 00:06:01,170
In questo momento quelli saranno vuoti.

86
00:06:01,520 --> 00:06:12,830
Quindi, in alto, abbiamo solo bisogno di fare un'app che utilizzi il punto ecocompatibile con il tuo URL codificato e poi aggiungiamo

87
00:06:12,890 --> 00:06:15,240
che è vero vero.

88
00:06:15,770 --> 00:06:18,970
E questo è un altro quelle linee che ti sei appena abituato a digitare.

89
00:06:19,190 --> 00:06:23,660
Abbiamo bisogno in qualsiasi momento di utilizzare un modulo e di inviare dati a una richiesta.

90
00:06:24,020 --> 00:06:25,890
OK, così è fatto ora.

91
00:06:26,250 --> 00:06:31,800
Quindi dovremmo essere in grado di ottenere la richiesta sul corpo di quel nome utente e password che conterrà il

92
00:06:31,790 --> 00:06:35,750
nome utente e la password dal modulo con cui l'utente sta tentando di iscriversi.

93
00:06:35,750 --> 00:06:39,770
Quindi ora siamo tornati alla logica e ho intenzione di digitare alcune righe che ho citato e

94
00:06:39,770 --> 00:06:40,630
poi spiegarle in seguito.

95
00:06:40,940 --> 00:06:47,970
Quindi l'utente non si registra e quindi anziché il registro dei punti utente passeremo in Nuovo utente e in

96
00:06:47,960 --> 00:06:48,810
Nuovo utente.

97
00:06:48,900 --> 00:06:56,190
Stiamo per passare il nome utente è uguale a richiedere Oddy quel nome utente, ma non aggiungere la password in

98
00:06:56,270 --> 00:06:57,560
questo nuovo utente.

99
00:06:57,620 --> 00:07:05,340
In realtà lo aggiungeremo dopo aver creato la nuova richiesta utente sulla password del corpo virgola e

100
00:07:05,330 --> 00:07:11,440
poi aggiungeremo una funzione di callback e poi user e quindi apriremo quella.

101
00:07:12,160 --> 00:07:12,850
OK.

102
00:07:13,230 --> 00:07:15,140
Quindi parliamo di ciò che abbiamo fatto finora.

103
00:07:15,140 --> 00:07:20,820
Creiamo un nuovo oggetto utente che non è sicuro per il database, ma è un nuovo utente e passiamo

104
00:07:20,810 --> 00:07:21,860
solo il nome utente.

105
00:07:22,310 --> 00:07:26,170
E la ragione per cui lo facciamo è che in realtà non salviamo la password nel database.

106
00:07:26,190 --> 00:07:27,570
Non è davvero una buona idea.

107
00:07:27,920 --> 00:07:29,990
E ti mostrerò cosa invece salviamo.

108
00:07:30,000 --> 00:07:33,510
Una volta ottenuto qualcosa in un database ma non è la password.

109
00:07:33,500 --> 00:07:39,890
Quindi, quello che facciamo è passare la password come secondo argomento al registro dei punti utente e usare il registro dei punti.

110
00:07:40,010 --> 00:07:45,770
Prendiamo questo nuovo utente che ha un nome utente e poi cancelleremo quella password che in pratica significa che

111
00:07:45,770 --> 00:07:50,290
lo trasforma in questa enorme stringa di numeri e lettere e lo memorizza nel database.

112
00:07:50,510 --> 00:07:55,730
Quindi passa l'oggetto utente che vogliamo creare e quindi passiamo la password separatamente.

113
00:07:56,220 --> 00:08:01,330
E poi se tutto va bene restituirà un nuovo utente che ha tutto dentro di esso.

114
00:08:01,400 --> 00:08:05,120
Ha un nome utente e quindi ha anche la password hash.

115
00:08:05,120 --> 00:08:06,220
Quindi vediamo se funziona.

116
00:08:06,320 --> 00:08:14,120
E invece di qui aggiungeremo il nostro semplice errore if e faremo un errore nel log

117
00:08:14,120 --> 00:08:22,340
della console e poi faremo anche un punto rosso per rendere nuovamente il modulo esattamente come quello.

118
00:08:22,560 --> 00:08:31,080
E se non c'è un errore allora abbiamo un'altra linea da fare che è il punto di passaporto autenticare locale.

119
00:08:31,470 --> 00:08:33,730
E di nuovo lo spiegherò dopo.

120
00:08:34,150 --> 00:08:42,360
Richiedi la funzione di risposta e invece di qui stiamo andando a reindirizzare alla pagina segreta.

121
00:08:42,360 --> 00:08:47,720
Quindi questo accadrà una volta che l'utente è stato creato e non c'è un errore se c'è un errore.

122
00:08:47,730 --> 00:08:51,280
Stiamo per rendere quella pagina di registrazione ed è qui che abbiamo un ritorno qui.

123
00:08:51,290 --> 00:08:52,950
Farà solo un corto circuito di tutto.

124
00:08:53,220 --> 00:08:57,780
E se non c'è un errore, eseguiremo l'autenticazione del passaporto.

125
00:08:57,890 --> 00:09:03,500
Quindi questa riga qui autenticare il passaporto in realtà farà vedere all'utente chi si prenderà cura di

126
00:09:03,500 --> 00:09:04,410
tutto nella sessione.

127
00:09:04,470 --> 00:09:06,140
Memorizzerà le informazioni corrette.

128
00:09:06,140 --> 00:09:10,510
Eseguirà il metodo utente serializzato che abbiamo specificato qui.

129
00:09:11,000 --> 00:09:14,600
E poi stiamo specificando che vogliamo usare la strategia locale.

130
00:09:15,090 --> 00:09:20,510
E in futuro se volessimo usare un'altra strategia e l'avessimo installata potremmo cambiarla per

131
00:09:20,510 --> 00:09:22,050
essere Twitter o Facebook.

132
00:09:22,080 --> 00:09:23,570
E ci sono altre cose che devi fare.

133
00:09:23,580 --> 00:09:27,860
Dobbiamo registrarci e ottenere credenziali su Twitter e Facebook e dobbiamo registrare le nostre app.

134
00:09:27,950 --> 00:09:29,170
Quindi è più complicato.

135
00:09:29,370 --> 00:09:34,310
Ma per quanto riguarda la logica e il passaporto, possiamo semplicemente scambiare le cose dentro e fuori e ci

136
00:09:34,320 --> 00:09:36,120
sono alcune piccole modifiche che dobbiamo fare.

137
00:09:36,200 --> 00:09:40,970
Ma generalmente il passaporto rende davvero facile per noi scambiare strategie diverse.

138
00:09:41,150 --> 00:09:42,730
Quindi useremo il locale.

139
00:09:43,160 --> 00:09:46,380
E questo di nuovo accederà effettivamente all'utente.

140
00:09:46,830 --> 00:09:54,060
E una volta che l'utente è stato loggato, stiamo andando a reindirizzare verso il segreto segreto nascosto e questa è solo

141
00:09:54,060 --> 00:09:54,920
una scelta personale.

142
00:09:54,920 --> 00:10:00,390
Potremmo tornare alla home page della rotta ma il segreto della barra segreta è quello per cui siamo tutti qui.

143
00:10:00,500 --> 00:10:06,800
Quindi, una volta che ci registriamo, una volta registrati, dovremmo essere portati a tagliare il segreto a meno che non ci

144
00:10:07,740 --> 00:10:10,950
sia un problema e poi torneremo al modulo di registrazione.

145
00:10:11,000 --> 00:10:15,110
Quindi proviamo a verificare che non ci siano errori di sintassi.

146
00:10:15,120 --> 00:10:16,380
Sembra buono.

147
00:10:16,400 --> 00:10:20,920
Ora andiamo alla nostra app e aggiorniamo la pagina e iscriviamoci.

148
00:10:21,260 --> 00:10:30,720
Quindi creerò un account come Colt e la mia password sarà solo la password e nessun hit inviato e arriveremo alla pagina

149
00:10:30,710 --> 00:10:35,220
segreta che è una buona notizia ma per assicurarci che funzioni.

150
00:10:35,370 --> 00:10:41,770
Fermiamo il server e apriamo realmente Mongo e mi collegherò al mio database, quindi mostrerò Digby

151
00:10:41,780 --> 00:10:46,130
e il database è Auth. app demo.

152
00:10:46,430 --> 00:10:54,060
collezioni delle collezioni e poi andremo a D.

153
00:10:54,060 --> 00:11:05,810
Quindi lo userò e poi guarderò le B che gli utenti trovino tutti gli utenti di DB e tu puoi vedere voglio dire che lo rendiamo un po 'più grande.

154
00:11:05,900 --> 00:11:11,580
Abbiamo un singolo utente da quando mi sono appena iscritto e ci sono molte informazioni qui.

155
00:11:11,630 --> 00:11:15,690
Beh, non c'è davvero molto, ci sono solo pochi pezzi ma sembra molto.

156
00:11:15,710 --> 00:11:18,300
La cosa più importante è che abbiamo un nome utente qui.

157
00:11:18,360 --> 00:11:19,480
Il tuo nome, Colts.

158
00:11:19,640 --> 00:11:23,410
Questo è l'unico pezzo che abbiamo specificato che ci sembra normale.

159
00:11:23,750 --> 00:11:30,780
E poi ci sono queste cose sale e hash e ne parlo molto di più nell'unità di

160
00:11:30,770 --> 00:11:32,040
autenticazione da zero.

161
00:11:32,250 --> 00:11:37,260
Quindi non entreremo in molti dettagli tutto quello su cui menzionerò per ora è che notiamo che

162
00:11:37,250 --> 00:11:42,250
la nostra password grezza, la parola password nel mio caso, non è affatto memorizzata nel database.

163
00:11:42,360 --> 00:11:44,790
Quello che stiamo memorizzando è questa versione pazzesca.

164
00:11:44,960 --> 00:11:49,150
E poi quest'altra cosa chiamata sale che ci aiuterà ad uccidere questo.

165
00:11:49,320 --> 00:11:54,980
E aiutandoci, intendo che è tutto gestito dal pacchetto manglers dei passaporti locali che

166
00:11:54,990 --> 00:11:59,610
abbiamo installato e riconfigurato come plug-in che abbiamo fatto proprio qui.

167
00:11:59,660 --> 00:12:05,010
In modo che si prende cura di tutto, dall'hashing alla salatura per memorizzare le cose nel database.

168
00:12:05,100 --> 00:12:12,170
semplice linea o ridimensionare nuovamente questo registro punti utente e passiamo a un nuovo utente con un nome utente.

169
00:12:12,170 --> 00:12:14,570
Tutto ciò che dovevamo fare era questa

170
00:12:14,580 --> 00:12:16,030
E poi si prende cura di tutto il resto.

171
00:12:16,050 --> 00:12:20,250
Gli diamo la password dal modulo ma non lo salviamo mai all'utente.

172
00:12:20,370 --> 00:12:24,540
Invece gestisce tutto e non salva mai una password.

173
00:12:24,600 --> 00:12:26,790
In realtà sta salvando la versione hash.

174
00:12:27,240 --> 00:12:27,890
OK.

175
00:12:28,520 --> 00:12:30,590
Quindi usciamo da Mongo ora.

176
00:12:31,320 --> 00:12:37,500
che potremmo fare è aprire la pagina indice o la home page intendo recit che renderizza a casa.

177
00:12:37,670 --> 00:12:40,840
E ora abbiamo la registrazione di lavoro l'ultima cosa

178
00:12:40,860 --> 00:12:49,050
Quindi facciamo C9 view sos a casa e aggiungeremo semplicemente un link quindi aggiungeremo un alleato qui e questo link dovrebbe

179
00:12:49,050 --> 00:12:51,060
andare alla pagina di registrazione.

180
00:12:51,060 --> 00:12:59,640
Quindi sarà un tag ancorato con un viaggio uguale a un registratore di cassa e aggiungeremo semplicemente Sign-Up

181
00:12:59,630 --> 00:13:01,060
all'interno del testo.

182
00:13:01,080 --> 00:13:06,160
Quindi ora se iniziamo il server cancelliamo tutto questo nodo.

183
00:13:06,250 --> 00:13:11,880
Sì e l'app visitatore e vai alla homepage.

184
00:13:11,880 --> 00:13:15,970
Ora abbiamo un link di iscrizione dove possiamo iscriverci.

185
00:13:16,110 --> 00:13:16,590
Grande.

186
00:13:16,670 --> 00:13:19,920
Quindi abbiamo coperto tutto ciò che voglio coprire in questo video nel prossimo video.

187
00:13:19,940 --> 00:13:21,700
Lavoreremo sulla funzionalità di accesso.
