Probablemente sea un caso límite: al probar un punto final de API (/invites.json), todo funciona correctamente. Luego eliminé al usuario invitado y ahora recibo una respuesta 422 de ese punto final. Usando el explorador de datos, puedo ver que el usuario ya no existe, pero la invitación sigue aparecida en la tabla de invitaciones.
¿Es posible invitar a un usuario con una dirección de correo electrónico que haya sido eliminada previamente?
De acuerdo, no he podido reproducir el comportamiento que describes a menos que esté malinterpretando algo sobre lo que esperas lograr (totalmente posible). Sería de ayuda si pudieras explicar qué esperabas ver en comparación con lo que realmente estás viendo.
Sin embargo, estoy utilizando:
Versión: 2.7.0beta7 SO: Ubuntu 20.04.1 LTS
Y realicé lo siguiente:
Invité a un usuario con una dirección de correo electrónico específica desde la interfaz de usuario: Administración > Usuarios > Enviar invitaciones
Invité y seleccioné la opción de restringir la invitación a una dirección de correo electrónico específica
Acepté la invitación desde el correo electrónico especificado en una ventana de incógnito separada
Como usuario administrador en mi ventana original, eliminé al usuario recién registrado
Usé Postman para enviar una solicitud GET a https://example.dev/u/my-dev-user/invited.json
¿Es este el endpoint que estabas usando? Mencionaste /invites.json, pero obtengo un error 404 al usarlo de todos modos; no estoy completamente seguro de que exista.
Recibí la siguiente respuesta después de eliminar el usuario, lo cual era lo esperado ya que eliminé al usuario: ninguno pendiente, ninguno canjeado y ninguno expirado:
Ah, y solo para dar seguimiento: la invitación funciona a través de la interfaz de administración como describiste, pero no a través del endpoint POST que estoy usando.
¡Oh, ahora lo entiendo, está claro! Sí, ahora puedo reproducirlo.
Puedo enviar invitaciones normales a correos electrónicos nuevos desde la API con una solicitud POST:
Recibo la siguiente respuesta como era de esperar:
SOLICITUD:https://example.dev/invites.json?email=example%2Bsomething@hey.com RESPUESTA REAL
¡Esto debería servir como informe, si entiendo correctamente! Entre los dos, creo que hemos cumplido en gran medida con el estándar para un informe de error.
Y luego, con suerte, alguien que pueda proporcionar una explicación, una solución alternativa y/o una corrección nos indicará qué hacer.
Creo que quizás la corrección del error se ha revertido o ya no funciona, ya que me encontré con este problema hoy. Seguí los siguientes pasos para identificar el problema:
Eliminé un usuario en el panel de administración
Invité al usuario a través de la API
Obtuve el mensaje de error
Eliminé las invitaciones pendientes para el usuario eliminado
Invité al usuario eliminado a través de la API
Obtuve el mensaje de éxito
Recibí la invitación, pero al hacer clic apareció la advertencia: “¡Lo sentimos! Esta invitación está destinada a usuarios nuevos que aún no tienen una cuenta existente”.
Ni la API ni el panel de administración pueden encontrar al usuario eliminado
Finalmente, intenté abrir el enlace de la invitación en una ventana de incógnito y pude iniciar sesión como un nuevo usuario. ¿Podría ser un problema con las cookies?
Intenté agregar un nuevo usuario a través de la API
Intenté reproducir el error, pero en mi caso funcionó volver a invitar a un usuario que había sido eliminado. Probé tanto con invitaciones por correo electrónico como por enlace.
¿Estás seguro de que no habías iniciado sesión cuando accediste a la página de la invitación? Hay una única ruta de código que muestra este mensaje y no veo ningún problema obvio.