J’ai créé un nouvel utilisateur à l’aide de l’API REST.
Mais je ne parviens pas à me connecter avec les informations d’identification du nouvel utilisateur. Lorsque je recherche dans la table des utilisateurs, je ne trouve pas le compte utilisateur.
Pour résoudre le problème, j’ai exécuté la commande CURL suivante.
J’ai également essayé d’utiliser une charge utile JSON avec la commande CURL.
J’obtiens le même résultat les deux fois : je ne peux pas me connecter en utilisant les informations d’identification du nouvel utilisateur et le nouvel utilisateur n’est pas trouvé dans la table des utilisateurs.
Je me suis rendu compte qu’il y avait une erreur dans notre documentation d’API. Le paramètre active n’est autorisé que lorsqu’une clé d’API associée à un utilisateur administrateur est utilisée et ce, depuis 2016.
Pour l’instant, j’ai corrigé la documentation dans :
Cela ne résout toujours pas le problème initial du message trompeur pour les administrateurs.
○ → curl -X POST -H \"api-key: $API_KEY\" -H 'api-username: michael' https://try.discourse.org/users.json --json \"$(jo email=michael+test@contoso.com username=michaeltest password=$PASSWORD active=true approved=true)\"
{\"success\":true,\"active\":true,\"message\":\"Your account is activated and ready to use.\"}
○ → curl -X POST -H \"api-key: $API_KEY\" -H 'api-username: michael' https://try.discourse.org/users.json --json \"$(jo email=michael+test2@contoso.com username=michaeltest2 password=$PASSWORD active=true approved=true)\"
{\"success\":true,\"active\":false,\"message\":\"Your account is activated and ready to use.\"}
^ un seul utilisateur a été créé ci-dessus
J’en déduis que beaucoup d’obfuscation a été mise en place dans le chemin /users.json pour dissuader les spammeurs, etc., mais cela rend également les choses difficiles pour les administrateurs. Je me demande si nous devrions ajouter un chemin d’administration explicite pour séparer les deux (création de compte normal vs création de compte administrateur) qui permettra à la fonction d’administration d’être non obfusquée.
Vous avez raison. C’était le problème : un utilisateur avec la même adresse e-mail existe déjà.
Je cherchais par nom d’utilisateur et par date de création décroissante, c’est pourquoi le nouvel utilisateur n’apparaissait pas dans les résultats de recherche.