2016-07-12 3 views
0

MapBox를 가지고 놀고 있는데 GeoLocation API를 가져 와서 데이터를 다시지도로 보내고 업데이트하는 데 문제가 있습니다.지도 상자 Geolocation,지도에로드하는 방법?

이것은 내가 지금 무엇을 가지고 있습니다 :

mapboxgl.accessToken = 'TOKEN-HERE'; 
    var map = new mapboxgl.Map({ 
     container: 'map', // container id 
     style: 'mapbox://styles/mapbox/streets-v9', 
     center: [-0.968539, 54.562917], 
     zoom: 9 
    }); 

    map.on('style.load', function() { 
     map.addSource("myMap", { 
      "type": "geojson", 
      "data": "https://api.mapbox.com/geocoding/v5/mapbox.places/UK_ADDRESS_HERE.json?country=gb&types=address&autocomplete=true&access_token=TOEKN" 
     }); 

     map.addLayer({ 
      'id': 'test1', 
      'type': 'line', 
      'source': 'myMap', 
      'interactive': true 
     }); 
}); 
+0

그리고 JS 콘솔에서 어떤 오류가 발생합니까? – snkashis

답변

1

대답은 당신이 UK_ADDRESS_HERE을 인코딩하는 방법으로 거짓말을 할 수 있습니다.


https://api.mapbox.com/geocoding/v5/mapbox.places/UK_ADDRESS_HERE.json

request format for the Mapbox Geocding API는 {조회} 매개 변수 값을 포함 할 수 있습니다 때문에,이 URL 인코딩을해야한다고 요구한다.

즉, 10 Downing Street, Westminster과 같은 간단한 지오 코드 요청은 encodeURIComponent에서 10%20Downing%20Street%2C%20Westminster을 사용하여 인코딩해야합니다.

귀하의 요청이 올바른지 확인하십시오.

curl https://api.tiles.mapbox.com/geocoding/v5/mapbox.places/10%20Downing%20Street%2C%20London.json?access_token=${MAPBOX_ACCESS_TOKEN} 
+0

제발 도와 드릴까요? https://stackoverflow.com/questions/47945104/using-mapbox-for-geolocation-in-html –

관련 문제