Secondo la documentazione dell’API di Discourse (Documentazione API di Discourse), dovrebbe essere possibile cambiare l’email tramite l’endpoint di riferimento.
Utilizza questo endpoint API: PUT /u/{username}.json
Secondo la documentazione, la modifica dell’email utilizza questo endpoint: /u/{username}/preferences/email.json: \u003chttps://docs.discourse.org/#tag/Users/operation/updateEmail\u003e
Tuttavia, verrà inviato un link di conferma all’indirizzo email per l’approvazione manuale da parte dell’utente. Fino ad allora, l’email non verrà modificata.
Grazie per il tuo aiuto. Forse sarebbe utile rimuovere la proprietà email dal PUT /u/{username.json} nella documentazione. Potrebbe far risparmiare tempo dedicato al debug ;-).
La questione dell’email di conferma: ne ho letto in un altro argomento. Non ne capisco il senso. Nel caso, Discourse è un’applicazione tra le altre del progetto e l’autenticazione degli utenti è gestita da un server di autenticazione personalizzato (come nel mio caso). Il server di autenticazione gestisce la conferma via email. Le applicazioni dovrebbero solo fare ciò che dice il server di autenticazione. Questa è secondo me la prassi normale. Altrimenti si finisce con email di conferma multiple, set di dati diversi…
Grazie per aver sollevato la questione. È strano in effetti. Potrebbe essere un residuo di un’era passata. Raccoglierò alcune informazioni e aggiornerò la documentazione se necessario.
Quindi devi configurarlo per dire a Discourse che l’indirizzo email è stato convalidato e non aggiornare l’email sull’API, ma sul tuo server di autenticazione.