Chrome navigateur.la géolocalisation.getCurrentPosition () erreur 403

Pour une raison quelconque soudainement en appelant navigator.geolocation.getCurrentPosition() Je reçois cette erreur:

Network location provider at 'https://www.googleapis.com/' : Returned error code 403.

Il fonctionnait parfaitement hier! Pourrait-il y avoir quelque chose avec leurs serveurs??

34
demandé sur mllm 2015-09-01 13:36:14

4 réponses

Il semble qu'il soit de retour maintenant. Mais avant de réaliser que cela fonctionnait, j'ai utilisé un autre moyen d'obtenir des données de localisation comme recommandé par un autre utilisateur sur reddit.com

var latLong;
$.getJSON("http://ipinfo.io", function(ipinfo){
    console.log("Found location ["+ipinfo.loc+"] by ipinfo.io");
    latLong = ipinfo.loc.split(",");
});

Source: https://www.reddit.com/r/webdev/comments/3j8ipj/anyone_else_had_issues_with_the_html5_geolocation/

14
répondu Amin 2015-09-01 18:39:36

Ce N'est pas la chose HTTPS, même les propres exemples de google échouent, voir https://developers.google.com/maps/documentation/javascript/examples/map-geolocation

J'ai ouvert un fil sur reddit et pour en savoir plus et j'ai été lié ici: https://www.reddit.com/r/webdev/comments/3j8ipj/anyone_else_had_issues_with_the_html5_geolocation/

J'ai eu des gens partout dans le monde signaler le même problème.

6
répondu SahAssar 2015-09-01 17:26:16

Cela arrive pour moi aussi sur idoco.github.io/map-chat

Je soupçonne que cela est lié aux changements que google a planifiés pour déprécier les fonctionnalités puissantes sur les origines non sécurisées il semble que certains changements aient été effectués au cours des derniers jours dans ce chromium Numéro 520765: dépréciation et suppression des fonctionnalités puissantes sur les origines non sécurisées

Pouvez-vous tester votre site sur https pour le confirmer?

En attendant, j'ai trouvé cette utilisation de l'api comme solution de contournement le ce repo:

  $.getJSON("http://ipinfo.io", function(doc){
    var latlong = doc.loc.split(",")
    setUserLocation(parseFloat(latlong[0]), parseFloat(latlong[1]));
    getLocation(parseFloat(latlong[0]), parseFloat(latlong[1])).then(function(res){
      userLocationName = res
    })
    initialiseEventBus();
    map.panTo(userLocation);

  }, function(err) {
    setUserLocation(Math.random()*50, Math.random()*60);
    userLocationName = "unknown.na"
    initialiseEventBus();
    map.panTo(userLocation);
  })
1
répondu Ido.Co 2015-09-01 13:29:21

J'ai eu le même problème, vous devez vérifier votre developer dashboard et assurez-vous que votre clé API n'a pas de restrictions d'utilisation ou d'Avertissements.

0
répondu Carlos_E. 2017-04-04 07:11:03