Mysql
 sql >> Base de données >  >> RDS >> Mysql

JSON affiche l'erreur 403 lors de la tentative de récupération des données de la base de données dans Android

Prenant un indice de ce message , je pense que vous devrez peut-être définir le User-Agent en-tête dans votre requête JSON. Essayez d'ajouter une ligne dans JSONFunction.makeHttpRequest() avant l'appel à execute() comme :

httpPost.setHeader("User-Agent","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36");

ou, sur la ligne avant d'appeler setEntity() vous pourriez faire quelque chose comme :

para.add(new NameValuePair("User-Agent","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36"));

(Remarque :cette chaîne d'agent utilisateur n'est que celle que j'ai extraite de mon navigateur. Vous pouvez probablement en utiliser une à partir de n'importe quel navigateur moderne.)

Cela fera croire à votre service REST que la demande provient d'un navigateur Web. Je soupçonne que c'est ce qui peut causer le 403, c'est-à-dire que votre serveur Web ne sait pas de quel type d'agent provient la demande. Quant à savoir pourquoi il a simplement cessé de fonctionner, peut-être que le serveur sur lequel votre service PHP s'exécute a été mis à jour récemment afin qu'il n'accepte pas les requêtes où l'agent utilisateur n'est pas déclaré.