Lors de la tentative d'analyse de la chaîne JSON vers Android, les valeurs HTML sont transmises à la place. Auparavant, le code fonctionnait bien, mais a soudainement commencé à planter lors de la récupération d'une base de données à l'aide de fichiers PHP.
Après vérification, des valeurs HTML ont été observées dans le logcat :
<html><body><h2>Checking your browser..</h2><script...
Le principal problème est que ByetHost implémente un simple module anti-bots de sécurité nommé testcookie-nginx-module.
Le module testcookie-nginx effectue une procédure en deux étapes validation :
Pour contourner cette validation dans Android, suivez ces étapes :
Obtenez la clé de cookie à partir d'un navigateur Web :
Définissez le cookie sur votre application Android :
Dans votre code qui fait la requête HTTP, ajoutez l'en-tête suivant :
<code class="java">httpPost.addHeader("Cookie", "__test=<content-of-your-cookie>; expires=<expires>; path=<path>");</code>
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!