Distinguer les chaînes JSON des messages d'erreur dans les réponses AJAX
Lorsque vous travaillez avec des appels AJAX, il est courant de recevoir des données du serveur qui peuvent être soit une chaîne JSON contenant des informations pertinentes, soit une chaîne de message d'erreur générée par la fonction mysql_error() de PHP. Pour gérer ces réponses efficacement, il est essentiel de disposer d'une méthode permettant d'identifier si les données reçues sont une chaîne JSON.
Une approche de ce problème consiste à définir une fonction appelée isJSON qui imite la syntaxe de l'opérateur instanceof utilisé. pour la vérification du type de tableau. La fonction isJSON utilise JSON.parse pour accomplir ceci :
function isJson(str) { try { JSON.parse(str); } catch (e) { return false; } return true; }
Cette fonction tente d'analyser la chaîne d'entrée en tant qu'objet JSON. Si l'analyse réussit, la fonction renvoie true, indiquant que la chaîne est une chaîne JSON valide. Si l'analyse échoue en raison d'une erreur syntaxique, la fonction intercepte l'exception et renvoie false, indiquant que la chaîne n'est pas JSON.
En utilisant cette fonction, nous pouvons écrire du code pour gérer les différents scénarios :
if (isJSON(data)) { // Process the JSON data } else { // Display the error message alert(data); }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!