Pri*_*ice 7 google-maps google-maps-api-3
我在Google Directions API中搜索了文档,并在网上浏览过,无法找到我的难题的答案.我的机构开发了一个API,用于查找使用公交的起点和目的地之间的最新可能偏离,还有一些返回"No_Result"错误.但是,当我手动搜索Google地图时,我可以返回结果.
我的Google Directions API程序发出以下查询:
返回:
    {
   "available_travel_modes" : [ "DRIVING", "BICYCLING", "WALKING" ],
   "geocoded_waypoints" : [
      {
         "geocoder_status" : "OK",
         "place_id" : "ChIJ7VtqLK7d5okR-bTUfKuHVpo",
         "types" : [ "street_address" ]
      },
      {
         "geocoder_status" : "OK",
         "place_id" : "ChIJxwHLSqzb5okR1rrjYhcDvkc",
         "types" : [ "premise" ]
      }
   ],
   "routes" : [],
   "status" : "ZERO_RESULTS"
}
但是,当我使用Google地图手动查询时,我可以通过传输返回结果.
我已经仔细检查了任何明显的错误(例如使用"Rd"而不是"St",或者输入一个不存在的地址)但是没有找到任何错误.我也改变了计划中的出发/到达时间,没有运气.
错误消息看起来表明MODE as TRANSIT不是该源/目标对之间的选项 - 但是手动界面没有问题.
有谁知道为什么谷歌地图可能会拒绝API查询,而不是手动查询?或者任何资源来帮助解决这个问题?谢谢!!
“全部大写”响应(无意中)存在误导性错误 - Google Maps API 服务器不会在此处进行正确的错误检查,如果您给它全部大写mode参数,无论您编写哪种模式,它都会返回驾驶方向。
真正的答案是,API 并不支持所有地方的所有模式,尽管 Google 地图应用程序支持。您可以提交功能请求来尝试推动这种平价。例如日本的公共交通: https://issuetracker.google.com/issues/35826181
测试查询以证明如果您使用全部大写字母,地图方向响应并不关心您指定的模式(请务必添加您的 API 密钥):
小智 4
查询字符串中的模式 ( mode=transit) 应大写 - 请尝试mode=TRANSIT改为大写。