2

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

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

它工作得很好,但我希望它搜索靠近我用户当前位置的地址(我有 lat long)。现在它给了我在国家另一边的结果。

所以像

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

4

1 回答 1

2

请参阅Mapbox Geocoding API 文档,它将proximity参数描述为

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

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

https://api.mapbox.com/geocoding/v5/mapbox.places/${query}.json?country=${country}&access_token=${accessToken}&proximity=${nearLongitude},${nearLatitude}

如果您在 JavaScript 中执行此操作,则可以使用Mapbox JS SDK,请参阅地理编码服务

如果您在网络上执行此操作并使用Mapbox Geocoder 控件,则有一个proximity选项和一个trackProximity选项可以根据当前地图视图自动设置接近度。

于 2018-08-30T00:39:25.100 回答