强制执行 MapBox 地理编码 API 到 return 只有带有邮政编码的结果

Enforce MapBox Geocoding API to return only results with a zipcode

我正在与 MapBox Geocoding API 合作,以便在我网站的位置搜索功能中获得地址建议。

调用示例如下:

https://api.mapbox.com/geocoding/v5/mapbox.places/Zur.json?country=ch&limit=5&proximity=8.765.432&language=en-GB&access_token=***

我的目标是强制 api 到 return 只有包含邮政编码的结果。

例如,如果我输入“Zur”(将搜索限制在瑞士),我会得到以下结果:

 - Zürich, Zürich, Switzerland
 - Zürich, Switzerland
 - Zürich Airport, Flughafenstrasse, Kloten, Zürich 8302, Switzerland
 - Zurich, Buchs, Zürich 8107, Switzerland

预期结果应该没有前两行,因为它们没有邮政编码。

我尝试自己实现删除客户端没有邮政编码的结果(就在我从 api 得到答案之后),但这是一个次优的解决方案(例如它不能确保有足够的结果)。

我在 MapBox 中找不到这样的功能。有没有更好的解决方案?

只需添加 ?types=address

查看所有类型列表: https://docs.mapbox.com/api/search/geocoding/#data-types