使用pincode计算距离(Google map Distance Matrix API)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用pincode计算距离(Google map Distance Matrix API)相关的知识,希望对你有一定的参考价值。
我正在开发MVC上的Web应用程序,我需要使用pin代码自动查找两个位置之间的距离。所以,我开始使用谷歌地图距离矩阵API,如下所示:
https://maps.googleapis.com/maps/api/distancematrix/xml?origins=" + Convert.ToString(origin) + "&destinations=" + Convert.ToString(destination) + "&key='MY key'
API适用于印度的密码,但是我必须在柬埔寨部署应用程序,而对于柬埔寨的密码,API无效。
有人可以帮帮我吗?
我已经看过你的请求https://maps.googleapis.com/maps/api/distancematrix/xml?origins=12413&destinations=12211&key=YOUR_API_KEY
了
请注意,12413
和12211
在起源和目的地参数中的含义非常模糊。您必须提供更精确的地址才能获得结果。 Distance Matrix API将在内部对12413
和12211
进行地理编码。
例如,12413
将被编码为“Cairo,NY 12413,USA”,这是美国的邮政编码。您可以在Geocoder工具中看到这个:
https://google-developers.appspot.com/maps/documentation/utils/geocoder/#q%3D12413
12211
将被地理编码为'Albany,NY 12211,USA':
https://google-developers.appspot.com/maps/documentation/utils/geocoder/#q%3D12211
在这两种情况下,它都不是柬埔寨的密码,正如您所期望的那样。
更重要的是,当我尝试使用组件过滤在柬埔寨找到邮政编码12413
或12211
时,我得到ZERO_RESULTS:
尝试从柬埔寨的坐标反向地理编码中获取邮政编码也会导致ZERO_RESULTS:
https://maps.googleapis.com/maps/api/geocode/json?latlng=11.55486%2C104.905679&result_type=postal_code&key=MY_API_KEY
虽然可以找到相同坐标的位置:
https://maps.googleapis.com/maps/api/geocode/json?latlng=11.55486%2C104.905679&result_type=locality&key=MY_API_KEY
这是'Phnom Penh',地点ID为ChIJ42tqxz1RCTERuyW1WugOAZw
。
考虑到所有这些事实,Google似乎没有在其数据库中拥有柬埔寨的密码信息。
我建议您在应用程序中使用自动填充功能。这样,用户可以选择建议的地址,并且可以使用用户选择的地点ID来执行距离矩阵请求。还要了解官方文档中的地理编码最佳实践:
https://developers.google.com/maps/documentation/geocoding/best-practices
我希望这有帮助!
以上是关于使用pincode计算距离(Google map Distance Matrix API)的主要内容,如果未能解决你的问题,请参考以下文章
JavaScript 使用标尺计算Google Map v3上的距离
如何使用带有 Google Maps Roads API 的坐标列表计算距离
在 Google Maps v2 上计算当前位置和标记之间的距离
在 Google Maps for Ionic 2 中计算两点之间的距离