2016-07-22 5 views
0

私はGoogle Street View Image APIを使用していましたが、apiが「画像がありません」と応答したときに問題が発生しました。私は前の投稿から見つけたいくつかのソリューションを実装しました。ほとんどはdetecting "we have no imagery" of google maps street view static imagesです。ここに私のコードです:Googleマップのストリートビュー "No Imagery"ステータスがOK

var address = thisItem.addr + "," + thisItem.city + "," + thisItem.state + " " + thisItem.zip; 

    var url = "https://maps.googleapis.com/maps/api/streetview?size=500x500&location=" + address + "&heading=&pitch=&key="; 

    var itemLat = parseFloat(thisItem.lat); 
    var itemLng = parseFloat(thisItem.lng); 

    var sv = new google.maps.StreetViewService(); 


    sv.getPanorama({location: {lat: itemLat, lng: itemLng}, radius: 1}, processSVData); 

    function processSVData(data, status) { 
     if (status === google.maps.StreetViewStatus.OK) { 
     console.log('status ok'); 
     } else { 
     console.log('status not ok') 
     } 
    } 

ストリートビューがある場合、私はURLをimg srcに接続します。

URL呼び出しでlat lngでなくgetPanoramaでlat lngが使用されているため、画像が「画像が見つかりません」と返されても、StreetViewStatusはまだOKですので在庫を設定できません画像。私はまた、URLに緯度経度を使用するように変更し、ステータスがOKでなくても画像が常に表示されます。助言がありますか?

+0

が重複する可能性をGoogleのStreetview Image APIが "申し訳ありません、ここに画像がありません"(つまりNULLです)の結果が返されたかどうかを確認してください。(http://stackoverflow.com/questions/9795533/how-can-i-tell-if-goog les-streetview-image-api-returns-sorry-we-have-no-image) – miguev

+0

新しい、はるかに良い解決策についてはhttp://stackoverflow.com/a/40803070/1069142を参照してください。 – miguev

答えて

1

Directly Accessing Street View Data

で説明したようにあなたがStreetViewServiceに2つのタイプの要求を開始することができる:StreetViewPanoRequest

  • 要求、これは一意にパノラマを識別する基準ID所定のパノラマデータを返します。これらの参照IDは、そのパノラマの画像の生涯にわたってのみ安定していることに注意してください。
  • StreetViewLocationRequestでリクエストすると、与えられた領域のパノラマデータが検索されます(LatLng)。

ご使用のアドレスについては、Geocoding Serviceを使用して変換することを検討することをおすすめします。

それはさておき、これらの文献には、あまりにも

+0

ありがとう@Teyam私はこれらのリソースのいくつかを使いこなしましたが、ジオコーディングやヘルプフォーラムに参加しなかったので、それらを確認してください – uelski

関連する問題