2017-01-14 2 views
2

パノラマにアクセスしようとすると次のエラーが発生します。 このエラーはランダムに発生します。時にはそれが起こり、それ以外の時に誰かがこれを解決する方法を詳しく教えてください。Google Street View API CORS角度2を使用してlocalhostからストリートビューにアクセスしようとすると問題が発生する

エラー:発信元 'localhost:4200'からの 'https://lh3.ggpht.com/-GEWinvnWrN8/VgoOwiNcv2I/AAAAAAAAA3w/vhFJX1VOvr4fDNV2JmKDPhUUx08MeBqdwCJkC/x0-y0-z0/p'の画像へのアクセスがCORSポリシーによってブロックされています。要求されたリソースに「アクセス制御許可の原点」ヘッダーがありません。 Origin 'localhost:4200'はアクセスできません。応答にHTTPステータスコード403がありました。

DRFを使用して作成したAPIにアクセスする際に、このCORSエラーが発生しました。しかしその後、私はAPIでミドルウェアを使って解決しました。 同じドメインにない場合、画像にアクセスすることを許可していないということは論理的ではありません。 私はAngular 2で作業しています。これは、ユーザーがx = latとy = lonを入力したときに呼び出すコードです。

var map = new google.maps.Map(document.getElementById('map'), { 
      zoom: 15, 
      center: {lat: this.x, lng: this.y} 
      }); 
    var panorama = new google.maps.StreetViewPanorama(
       document.getElementById('pano'), { 
        position: {lat: this.x, lng: this.y}, 
        pov: { 
        heading: 34, 
        pitch: 10 
        } 
       }); 
    var cafeMarker = new google.maps.Marker({ 
         position: {lat: this.x, lng: this.y}, 
         map: map, 
         icon: 'https://chart.apis.google.com/chart?chst=d_map_pin_icon&chld=cafe|FFFF00', 
         title: 'Canteen' 
        }); 
        panorama.addListener('position_changed', function() { 
       console.log(panorama.getPosition().lat() +" " + panorama.getPosition().lon()); 
      }); 

map.setStreetView(panorama);` 

答えて

0

それがあるべきindex.htmlを におけるGoogleのAPIをご参照を確認します(HTTP Sに気づく)

+0

それは、HTTP ** Sである

src="https://maps.google.com/maps/api/js?key=YOUR-KEY"> 

**指数で.html、奇妙なことに、このエラーはlocalhost上でのみ1回だけ発生しています。ウェブサイトが一部のサーバで動作していない場合、ローカルホストをngrokにルーティングしてもエラーは表示されません。 –

関連する問題