【问题标题】:Empty response from Roads API来自 Roads API 的空响应
【发布时间】:2018-10-13 17:05:18
【问题描述】:

我正在尝试使用 Google Roads API 来查找道路上距离给定点最近的点的 GPS 坐标。它只完成对第一个给定点的请求("originalIndex": 0);谁能解释为什么?我的 API 密钥有效,我可以在 Google 地图上找到第二个点并查看附近的道路。当我自己请求第二点时,我收到空响应“{}”。

请求:

https://roads.googleapis.com/v1/nearestRoads?points=60.170880,24.942795|-0.030331,30.513929&key=YOUR_API_KEY

回复:

{"snappedPoints": [
{
  "location": {
    "latitude": 54.9702813818773,
    "longitude": -1.6113525033160663
  },
  "originalIndex": 0,
  "placeId": "ChIJicwBW7ZwfkgRQJjXzwd96mM"
},
{
  "location": {
    "latitude": 54.9702813818773,
    "longitude": -1.6113525033160663
  },
  "originalIndex": 0,
  "placeId": "ChIJicwBW7ZwfkgRQZjXzwd96mM"
}]}

【问题讨论】:

    标签: google-maps google-maps-api-3


    【解决方案1】:

    您的点与道路之间的距离应在 50-60 米以内。如果此距离较大,则服务返回空响应。

    在您的示例中,-0.030331,30.513929 点很远。您可以使用地理编码器工具检查它:

    https://google-developers.appspot.com/maps/documentation/utils/geocoder/#q%3D-0.030544%252C30.514678

    您会看到距离大于 50 米。

    如果我选择一个更靠近道路的点,例如-0.027619,30.51668,则最近的道路端点将返回结果

    https://roads.googleapis.com/v1/nearestRoads?points=-0.027619%2C30.51668&key=YOUR_API_KEY

    之前在公共问题跟踪器中报告了类似问题:

    https://issuetracker.google.com/issues/37843707

    我希望这能解决您的疑问。

    【讨论】:

    • 有趣的反对票。任何原因?只是想知道我错在哪里,:)
    • 也许这是我第一次对你的一个答案投了反对票,因为它们大部分时间质量都很好,但已经发布了一个答案完全相同的解释:point is too far from路... ;)
    • @MrUpsidown 好的。但是,我向用户提供了如何解决此问题的信息。所以下次用户可以自己做。
    • 是的。可能这真的不值得投反对票......我已经习惯了在这个标签中投下大量可怕的 Q/A,也许我有时做得太快了......虽然我无法删除我的投反对票;)
    【解决方案2】:

    第二个点 (-0.030331,30.513929) 离道路太远。在这种情况下,API 文档说它将返回一个空响应(“如果附近没有道路,则不返回路段。”)

    【讨论】:

    • “附近没有路”的距离阈值是多少?
    • 在文档中找不到。
    猜你喜欢
    • 1970-01-01
    • 2021-03-24
    • 1970-01-01
    • 2023-03-12
    • 2018-05-12
    • 2023-04-07
    • 1970-01-01
    • 2023-03-25
    • 2016-08-06
    相关资源
    最近更新 更多