Problèmes d’API
Les problèmes d’API sont les principaux cas que vous pouvez rencontrer lorsque vous travaillez avec des noms de domaine. Chaque fois qu’un domaine est affiché dans l’espace client / d’administration ou qu’une action est demandée sur un nom de domaine particulier, un appel API est effectué.
Chaque cas d’erreur est différent et dépend d’une situation particulière.
Par exemple :
- Un enregistrement de domaine peut échouer car une donnée fournie par le client ne respecte pas la syntaxe attendue
- Un changement de serveur de noms peut échouer car les serveurs de noms fournis par le client sont erronés
- Un bug dans le module fait échouer l’API et un débogage plus approfondi est nécessaire pour comprendre ce qui est demandé par l’application au module et ce que le module a demandé via l’API
Prenons l’exemple suivant :
Un nom de domaine est déjà enregistré et le client souhaite mettre à jour les informations whois. Pour le contact administratif, il a saisi plusieurs caractères non supportés dans le champ « Adresse 2 » :
Une fois soumis, un message d’erreur s’affiche pour l’utilisateur :
D’accord, mais que faire ? Comment comprendre le problème de votre côté pour aider le client ?
Ouvrez les logs des modules depuis Outils > Process Logs > Modules Activity Logs et recherchez « ModifyWhois » ou le nom de domaine et « Netim » comme nom de module. Nous avons trouvé les lignes suivantes :
La première entrée en partant du bas indique que WISECP a appelé la fonction ModifyWhois. Dans le détail de l’entrée, il y a beaucoup d’informations mais dans notre cas, l’information importante est :
"administrative": {
"Name": "John Doe",
"FirstName": "John",
"LastName": "Doe",
"Company": "",
"Address": "wrong string syntax &e"'(-e_ca)=}$^u*$",
"AddressLine1": "wrong string syntax &e"'(-e_ca)=}$^u*$",
"AddressLine2": null,
"ZipCode": "59160",
"State": "Nord",
"City": "Lille",
"Country": "FR",
"Phone": "123456789",
"Fax": "",
"EMail": "dev-cms@netim.com",
"FaxCountryCode": "",
"PhoneCountryCode": "33"
},
Nous pouvons constater que « Address 2 » a été rempli avec « wrong string syntax &e »‘(-e_ca)=}$^u*$ »
La réponse affiche également le résultat de la fonction comme suit :
Bien ! Il s’agit de la bonne fonction. Trouvons maintenant l’appel d’API qui a échoué. Comme l’entrée de la fonction est le premier événement, nous examinons les entrées précédentes. L’entrée précédente avec le nom d’action « ModifyWhois **** (contactCreateObj administrative) » indique que le module a essayé de créer un nouveau contact via l’API avec la fonction SOAP contactcreateObj.
Mais la réponse a été la suivante :
E13 : Address : Some characters are not accepted (accents, symbols, ...)
Bingo : nous avons constaté que le problème s’est produit parce que le client a demandé une mise à jour des informations du contact administratif du nom de domaine avec une adresse contenant des caractères non pris en charge.