Maison > interface Web > js tutoriel > Comment éviter les erreurs OVER_QUERY_LIMIT dans l'API Google Maps v3 avec Javascript ?

Comment éviter les erreurs OVER_QUERY_LIMIT dans l'API Google Maps v3 avec Javascript ?

Linda Hamilton
Libérer: 2024-11-02 16:30:02
original
507 Les gens l'ont consulté

How to Avoid OVER_QUERY_LIMIT Errors in Google Maps API v3 with Javascript?

Détermination de OVER_QUERY_LIMIT dans l'API Google Maps v3 : ralentissement des requêtes avec Javascript

L'erreur OVER_QUERY_LIMIT se produit fréquemment lors de requêtes de géocodage excessives dans Google Maps API v3. Pour éviter cette erreur, il est essentiel d'introduire une pause entre chaque requête pour ralentir le processus.

Voici le code original :

<code class="javascript">function codeAddress(vPostCode) {
  if (geocoder) {
    geocoder.geocode( { 'address': "'" + vPostCode + "'"}, function(results, status) {
      if (status == google.maps.GeocoderStatus.OK) {
        // Handling success
      } else if (status == google.maps.GeocoderStatus.OVER_QUERY_LIMIT) { 
        // Handling OVER_QUERY_LIMIT error
      } else {
        // Handling other errors
      }
    });
  }
}</code>
Copier après la connexion

Pour implémenter la pause, nous pouvons utiliser ce qui suit code :

<code class="javascript">function codeAddress(vPostCode) {
  if (geocoder) {
    while (wait) { /* Just wait. */ };
    geocoder.geocode( { 'address': "'" + vPostCode + "'"}, function(results, status) {
      if (status == google.maps.GeocoderStatus.OK) {
        // Handling success
      } else if (status == google.maps.GeocoderStatus.OVER_QUERY_LIMIT) { 
        wait = true;
        setTimeout("wait = true", 2000);
        // Handling OVER_QUERY_LIMIT error
      } else {
        // Handling other errors
      }
    });
  }
}</code>
Copier après la connexion

Dans ce code modifié, nous introduisons une variable d'attente pour suspendre l'exécution lorsque l'erreur OVER_QUERY_LIMIT se produit. Un timeout de 2000 millisecondes est alors défini pour reprendre l'exécution, offrant un délai entre les requêtes.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal