我尝试创建一个Google地图API调用,用于搜索特定边界中的地址。使用边界搜索坐标
因此,在我的测试中,我想搜索“8670”,它是比利时一个村庄的邮政编码。这个村: https://www.google.com/maps/place/8670+Koksijde,+Belgium/@51.1129798,2.6459201,13z/data=!3m1!4b1!4m5!3m4!1s0x47dcba8d702c832d:0x10129f1eb06df0d2!8m2!3d51.117577!4d2.6744402
API调用中使用国家的参数给我正确的答案: https://maps.googleapis.com/maps/api/geocode/json?address=8670|country:BE
但使用范围参数返回我在美国的城市: https://maps.googleapis.com/maps/api/geocode/json?address=8670&bounds=53.6014224,7.0979623|49.4057287,2.4896213
我知道范围并不是一个严格的过滤器,但是因为有一个城市在范围内,那个邮政编码让我想到了为什么谷歌找不到它,并且让我离开了一个远离我的边界的城市?
我想使用边界而不是国家参数的原因是因为搜索是针对3个国家(NL,BE,LU),并且据我所知在国家参数中不可能使用OR 。
这有助于很多,因为它看起来像我完全监督坐标的顺序。 (这导致我另一个“问题”,从我的应用程序的API调用给出了另一个结果,然后当我采取相同的调用(从我的应用程序打印API调用字符串,所以它的100%相同的调用)。但这两个位置都在边界,所以它没有错,只是奇怪从我的应用程序调用给出了另一个结果 – nbar