2016-06-19 6 views
0

Google Maps JavaScript APIをAPIキーと組み合わせて使用​​しています。これは、いくつかの時間または数日のために素晴らしい作品が、私は、次の403エラーを取得し、マップがなくなっている特定intervall後:私は持っていなかったため、問題がどこにあるGoogle Maps JavaScript APIの問題を回避するにはどうすればよいですか?

enter image description here

私は知りませんまだ1日あたり25.000件のリクエストに達しました。 apiキーをリセットしてページをリロードすると、地図が正しく読み込まれますが、apiキーを何度も何度もリセットする必要はありません。

あなたは私がカスタムマップを使用しています見ることができるように、私は、コードのコードが問題であるが、ここにあるとは思わない:

(function(window, google){ 

    var infoWindow = null; 

    function init() { 
     var map; 
     var mapOptions = { 
      zoom: 12, 
      scrollwheel: false, 
      center: new google.maps.LatLng(
       51.050409, 
       13.737262 
      ), 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 
     map = new google.maps.Map(
      document.getElementById('map'), 
      mapOptions 
     ); 
     setMarkers(map, locations); 
     infoWindow = new google.maps.InfoWindow({ 
      content: "holding..." 
     }); 
    } 

    function setMarkers(map, locations) { 
     var i, icon, marker, contentString; 
     for (i = 0; i < locations.length; i++) { 
      icon = '../Images/icn-marker.png'; 
      contentString = '<div><b>' + locations[i][0] + '</b><br>' + locations[i][1] + '<br>' + locations[i][4] + '</div>'; 
      marker = new google.maps.Marker({ 
       position: new google.maps.LatLng(locations[i][2], locations[i][3]), 
       map: map, 
       title: locations[i][0], 
       icon: icon, 
       html: contentString 
      }); 
      google.maps.event.addListener(marker, 'click', function() { 
       infoWindow.setContent(this.html); 
       infoWindow.open(map, this); 
      }); 
     } 
    } 

    google.maps.event.addDomListener(window, 'load', init); 

})(window, google); 

どれでも私のスクリプトは次のようなルックスのものがあります。

<script src="https://maps.googleapis.com/maps/api/js?key=MYAPIKEY"></script> 
<script src="http://example.de/example/map.js"></script> 

問題がどこにあるのかわからないので、お手伝いできますか。

+0

を。 – xomena

答えて

0

403 errorは、APIキーが無効であるか、リクエストに含まれていないことを示します。キー全体が含まれており、このキーのAPIを有効にしていることを確認してください。

usage limitを確認してください。使用制限を超えたり、サービスを悪用すると、Webサービスは特定のエラーメッセージを返します。制限を超え続けると、Webサービスへのアクセスがブロックされる可能性があります。 403 Forbiddenレスポンスを受け取ることも可能です。

問題は、二つの方法を組み合わせることによってアドレスすることができる:

  • より効率的にWebサービスを使用するアプリケーションを最適化することにより、使用量を下げます。
  • 可能な限り、Google Maps API for Workライセンスの追加料金を購入することで、使用制限を拡大します。

注:要求が失敗した場合 、あなたは指数バックオフとの要求を再試行することを確認する必要があります。たとえば、要求が1回失敗した場合は、1秒後に再試行し、失敗した場合は2秒後に再試行し、4秒後に再試行します。これにより、多くのクライアントが要求を非常に迅速に再試行しようとするため、壊れた要求や大規模な障害がGoogleのサーバーにあふれないようにします。

はここで関連だSOチケットは403エラー応答が発生しました:あなたはあなたのセッションが期限切れにされる可能性がありますいくつかの特定の間隔(日)の間、ページをリロードしない場合はGoogle static map API getting 403 forbidden when loading from img tag

+0

ありがとう、私はこれをチェックします。 – Fox

+0

心配なし:) –

関連する問題