Probabilmente si tratta di un caso limite: mentre testavo un endpoint API (/invites.json), tutto funzionava correttamente. Ho poi eliminato l’utente invitato e ora ricevo una risposta 422 da quell’endpoint. Usando l’esploratore dei dati, posso vedere che l’utente non esiste più, ma l’invito è ancora elencato nella tabella degli inviti.
È possibile invitare un utente con un indirizzo email che è stato precedentemente eliminato?
Ok, non sono riuscito a riprodurre il comportamento che hai descritto, a meno che non abbia frainteso qualcosa riguardo a ciò che speri di ottenere (è assolutamente possibile). Potrebbe essere utile se spiegassi cosa ti aspettavi di vedere rispetto a ciò che stai effettivamente vedendo.
Sto utilizzando:
Versione: 2.7.0beta7 Sistema operativo: Ubuntu 20.04.1 LTS
& ho eseguito le seguenti operazioni:
Invito di un utente con un indirizzo email specifico dall’interfaccia utente, Amministratore > Utenti > Invia Inviti
Ho inviato l’invito e selezionato l’opzione per limitare l’invito a un indirizzo email specifico
Ho accettato l’invito dall’indirizzo email specificato in una finestra di navigazione in incognito separata
Come utente amministratore nella mia finestra originale, ho eliminato l’utente appena registrato
Ho utilizzato Postman per inviare una richiesta GET a https://example.dev/u/my-dev-user/invited.json
è questo l’endpoint che stavi utilizzando? hai menzionato /invites.json, ma ottengo un errore 404 con quello in ogni caso; non sono completamente sicuro che esista.
Ho ricevuto la seguente risposta dopo aver eliminato l’utente, che è ciò che mi aspettavo dato che ho eliminato l’utente: nessuno in sospeso, nessuno riscattato e nessuno scaduto:
Ah, e solo per fare un follow-up: l’invito funziona tramite l’interfaccia di amministrazione come hai descritto, ma non tramite l’endpoint POST che sto utilizzando.
Oooh, capito, ora è chiaro – sì, riesco a riprodurlo ora.
Riesco a inviare inviti regolari a indirizzi email completamente nuovi tramite l’API con una richiesta POST:
Ottengo la seguente risposta come previsto:
Ah, bene, non ero solo io Quindi sono nuovo in questa faccenda: questo viene segnalato come un bug ora o c’è un altro posto dove pubblicarlo, ad esempio GitHub?
Penso che forse la correzione del bug sia stata annullata o non funzioni più, poiché ho riscontrato questo problema oggi. Ho seguito i passaggi riportati di seguito per identificare il problema.
Ho eliminato un utente dal pannello di amministrazione
Ho invitato l’utente tramite l’API
Ho ricevuto un messaggio di errore
Ho eliminato gli inviti in sospeso per l’utente eliminato
Ho invitato di nuovo l’utente eliminato tramite l’API
Ho ricevuto un messaggio di successo
Ho ricevuto l’invito, ma quando ho cliccato ho ottenuto l’avviso: “Spiacenti! Questo invito è destinato a nuovi utenti che non hanno già un account esistente.”
Né l’API né il pannello di amministrazione riescono a trovare l’utente eliminato
Infine, ho provato ad aprire il link dell’invito in una finestra di navigazione in incognito e sono riuscito ad accedere come nuovo utente: potrebbe essere un problema con i cookie?
Ho provato ad aggiungere un nuovo utente tramite l’API
Ho provato a riprodurre il bug, ma per me è riuscito a reinvitare un utente che era stato eliminato. Ho provato sia con gli inviti via email che con quelli tramite link.
Sei sicuro di non essere loggato quando hai accesso alla pagina dell’invito? C’è un unico percorso di codice che visualizza questo messaggio e non vedo problemi evidenti.