Google Maps API距离矩阵起点地址缺失及NOT_FOUND问题求助
问题排查与解决方案
核心原因
返回origin_address为空且element状态为NOT_FOUND,主要是因为API无法将模糊的城市名Amsterdam匹配到可用于跨城火车Transit查询的具体交通枢纽/站点。Google Maps Distance Matrix API在transit_mode=train模式下,需要明确的公共交通接入点,单纯的城市名无法触发有效的路线计算。
解决办法
优化地点参数的精确性
给出发地和目的地补充更明确的标识:- 加上国家后缀消除歧义:
origins=Amsterdam, Netherlands、destinations=Paris, France - 直接指定核心火车站(更推荐):
origins=Amsterdam Centraal Station、destinations=Paris Gare du Nord
- 加上国家后缀消除歧义:
修正请求参数细节
语言参数en-EN不符合标准格式,建议改为en-US或en-GB,虽然这不是导致当前问题的直接原因,但规范参数能避免潜在的兼容性问题。
修改后的请求示例
https://maps.googleapis.com/maps/api/distancematrix/xml?destinations=Paris, France&language=en-US&mode=transit&transit_mode=train&origins=Amsterdam, Netherlands&key=XXX
验证逻辑
当API能精确定位到出发地的火车枢纽后,origin_address会返回具体的地址信息,同时element会返回正常的火车路线距离、时长等数据。
内容的提问来源于stack exchange,提问作者Thomas Gonda
相关产品推荐
相关产品推荐

