如何使用Mapbox的Geocoder API搜索接近用户当前位置的地址?

时间:2018-08-29 21:46:00

标签: mapbox geocoding mapbox-gl-js

我正在使用Mapbox Geocoder API搜索地址:

https://api.mapbox.com/geocoding/v5/mapbox.places/${this.searchKeyword}.json?country=us&access_token=${this.accessToken}

它工作得很好,但是我希望它搜索用户当前位置附近的地址(我的时间很长)。现在,它给我的结果是该国的另一端。

类似

https://api.mapbox.com/geocoding/v5/mapbox.places/${this.searchKeyword}.json?country=us&access_token=${this.accessToken}&near=123.456, 121.654

1 个答案:

答案 0 :(得分:2)

请参见Mapbox Geocoding API documentation,它将[cfati@cfati-ubtu16x64-0:~/Work/Dev/StackOverflow/q052085090]> gcc code.c -o code.exe && ./code.exe Printing record: Name length: 0 Name: [] Surname length: 0 Surname: [] Printing record: Name length: 2 Name: [F.] Surname length: 13 Surname: [MurrayAbraham] 参数描述为

  

根据提供的位置显示本地结果。选项是经度,纬度坐标。

因此在JavaScript中,您可以将URL形成为:

proximity

如果您使用JavaScript进行操作,则可以使用Mapbox JS SDK,请参见Geocoding service

如果您是在网络上使用Mapbox Geocoder control进行操作,则有一个proximity option和一个https://api.mapbox.com/geocoding/v5/mapbox.places/${query}.json?country=${country}&access_token=${accessToken}&proximity=${nearLongitude},${nearLatitude}选项可以根据当前地图视图自动设置接近度。 / p>