‫Istruttore: Va bene, ora inviamo
‫molto velocemente anche le e-mail per il ripristino
‫della password, e quell'e-mail sarà molto simile a
‫questa, quindi andiamo avanti e copiamo tutto
‫questo in un nuovo
‫file, passwordReset. pug,
‫quindi incollalo qui.
‫Ora, parte del testo che
‫vogliamo qui credo sia già
‫in authController, quindi quaggiù in forgotPassword, quindi
‫proprio qui, in realtà
‫questo messaggio qui è un po'
‫quello che ora vogliamo nel nostro modello, quindi prendiamolo,
‫mettiamo è qui in questo primo paragrafo, ora mettiamo questo qui
‫alla fine
‫dell'e-mail, questo non
‫ci serve, mettiamolo qui
‫in un paragrafo separato, poi qui, in realtà non è
‫questo, ok, ma invece usiamo l'URL
‫qui come questo, quindi un'interpolazione e poi URL, e
‫inoltre, stiamo effettivamente mettendo quell'URL su questo, un
‫pulsante verde proprio qui.
‫Quindi qui, diciamo come testo, reimposta la password.
‫Quindi proprio qui, come questo paragrafo, diciamo solo per ora,
‫Sito Web per questa azione non
‫ancora implementato.
‫Quindi questo dovrebbe essere il modello,
‫il prossimo passo, creiamo effettivamente la funzione
‫di invio qui nella nostra classe di posta elettronica, quindi abbiamo sendWelcome,
‫e ora
‫abbiamo un'altra situazione per la quale vogliamo le email,
‫e così semplicemente, aggiungiamo un
‫altro metodo qui ,
‫quindi sendPasswordReset, quindi attendi questo. send, e quindi ora
‫il nome
‫del modello si chiama passwordReset, quindi quello
‫che abbiamo appena creato,
‫e ora la riga dell'oggetto,
‫che sarà, Il token di reimpostazione della
‫password, e diciamo anche, valido solo per 10 minuti.
‫Ok, salviamolo e ora, come passaggio finale, dobbiamo effettivamente
‫chiamare questo metodo qui.
‫Quindi nel nostro authController, dove prima avevamo
‫tutto questo qui, diciamo ora, attendi nuova email, proprio come abbiamo
‫fatto prima per la registrazione,
‫e ora troviamo l'utente
‫corrente, e si chiama semplicemente utente, e poi resetURL ,
‫che abbiamo già definito prima quassù.
‫Ok, e poi il metodo che
‫abbiamo appena creato, sendPasswordReset, e il gioco è fatto.
‫Ok, quindi nessuna definizione delle righe dell'oggetto qui, nessuna
‫definizione dei messaggi, e quindi abbiamo rimosso tutto questo con il nostro
‫nuovo, davvero carino gestore di posta elettronica, e mettiamo anche
‫quello qui nel blocco try per mantenere questi
‫due qui davvero insieme.
‫Ok, quindi questo dovrebbe essere sufficiente
‫per poterlo effettivamente testare.
‫Ok, allora andiamo da Postman e reimpostiamo la password per
‫questo utente che abbiamo appena creato nell'ultima
‫lezione, quindi
‫Reimposta password, quindi in
‫realtà non è quello, quindi
‫in effetti è Password dimenticata.
‫Quindi qui, tutto ciò che dobbiamo specificare è
‫l'e-mail e questo dovrebbe darci il nostro token di ripristino, ricordi?
‫Quindi, quando ora invio questo, otteniamo il nostro successo, e quindi ora
‫dovremmo anche ricevere la nostra e-mail, e
‫infatti, eccolo qui.
‫Così bello!
‫Quindi provenendo da hello@jonas. io e
‫andando a test3@natours. io che
‫è l'utente per cui abbiamo appena reimpostato la
‫password, quindi ecco l'URL,
‫quindi ora eseguiamo l'intero flusso e
‫reimpostiamo davvero la password per questo utente.
‫Quindi ora abbiamo bisogno di usare il percorso Reimposta
‫password e, beh, ora eliminiamo tutto questo, e poi anche
‫questa parte, ciò che conta davvero qui è solo
‫questo token.
‫E ora qui, impostiamo la nuova password, e
‫diciamo in realtà newpassword, quindi è quella
‫che abbiamo usato in modo che non
‫la dimentichi.
‫Quindi proviamolo, e con successo.
‫Solo come passaggio finale, vediamo
‫se possiamo effettivamente accedere al nostro sito web qui.
‫Quindi accedi, penso di aver copiato l'e-mail, no non
‫l'ho fatto, quindi questo è test3@natours. io, e quello che ho
‫copiato era la password.
‫Quindi ha avuto successo, e qui abbiamo la nostra immagine predefinita,
‫e ora ovviamente potremmo andare avanti, caricarla,
‫ma sappiamo già che funziona, quindi non
‫abbiamo bisogno di provarla.
‫Ora, a questo punto, come già saprai,
‫tutte le nostre e-mail vengono effettivamente catturate qui in Mailtrap, e
‫quindi di nuovo, questo perché in modalità di sviluppo,
‫non vogliamo far trapelare queste e-mail qui a utenti reali,
‫inoltre, vorremmo non abbiamo modo di dare un'occhiata a queste e-mail se
‫dovessero davvero finire nelle caselle di posta dei nostri utenti reali,
‫e quindi di nuovo, ecco perché utilizziamo un servizio come questo.
‫Tuttavia, nel prossimo video, inizieremo quindi a inviare
‫email reali, quindi email a indirizzi email reali, che poi
‫finiranno nelle loro caselle di posta.