Le service Google Geocoding renvoie une erreur 400
J'ai essayé d'obtenir une réponse json à partir de google du service de géocodage. Je suis à l'aide de PHP. J'ai essayé avec fopen, puis j'ai lu dans un autre stackoverflow question que je devrais utiliser file_get_contents, mais n'a pas travaillé trop. Puis-je continuer à chercher et trouvé quelqu'un dans un autre forum qui dit que je serais une meilleure solution si j'utilise CURL j'ai donc modifié mon code et ne fonctionne pas. Dans tous les cas, j'ai reçu un message "Erreur 400: Bad Request. Votre client a émis un malformé ou de la demande illicite."
Mon code est: est-ce
$jsonUrl = "http://maps.googleapis.com/maps/api/geocode/json?address=" . $cityName . "&sensor=false";
$geocurl = curl_init();
curl_setopt($geocurl, CURLOPT_URL, $jsonUrl);
curl_setopt($geocurl, CURLOPT_HEADER,0); //Change this to a 1 to return headers
curl_setopt($geocurl, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]);
curl_setopt($geocurl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($geocurl, CURLOPT_RETURNTRANSFER, 1);
$geofile = curl_exec($geocurl);
Puis-je imprimer le contenu et j'ai obtenu le message d'erreur.
Des idées?
Merci beaucoup.
source d'informationauteur Chuy
Vous devez vous connecter pour publier un commentaire.
Bien, j'ai tout compris.
Mon $cityName variable:
Le blanc de l'espace entre la virgule et "NL". J'ai utilisé str_replace pour changer "" pour "+" et obtenez une url valide comme dans la documentation:
http://code.google.com/intl/es/apis/maps/documentation/geocoding/
Salutations et merci beaucoup pour votre aide!
Je pense que vous êtes absent de l'API-Key
Btw, j'ai simplement utiliser file_get_contents() pour geocoder de Google, car il y a rien de spécial à en-tête, vous devez définir, ou http-vous redirige à suivre, etc.
Pour info, je viens de tomber sur ceci et mon problème est que j'avais mal tapé l'adresse" paramètre de chaîne de requête (j'ai tapé comme "adresse" plutôt que de "adresse").