Comprendre le problème de décodage JSON dans les appels de service Web
Dans les interactions de service Web, parfois, la fonction JSON_DECODE renvoie Null. Un problème de confusion se pose lorsqu'un service Web fournit des données JSON qui ressemblent:
var_dump($foo): string(62) "{"action":"set","user":"123123123123","status":"OK"}"
cependant, tentant de décoder le JSON dans l'application renvoie null:
$data = json_decode($foo, true); var_dump($data): NULL
Résolution du problème
Une cause potentielle de ce problème est la fonctionnalité de citations magiques de Php. Les citations magiques échappent automatiquement à des caractères spéciaux dans les données de forme, ce qui interfère potentiellement avec l'analyse JSON. Pour résoudre ceci:
if (get_magic_quotes_gpc()) { $param = stripslashes($_POST['param']); } else { $param = $_POST['param']; } $param = json_decode($param, true);
en désactivant les citations magiques ou en dépouillant les barres obliques à partir des données JSON, l'application peut décoder avec précision le JSON et récupérer les informations souhaitées.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3