【问题标题】:Matrix API not routing correctlyMatrix API 未正确路由
【发布时间】:2023-03-14 04:06:02
【问题描述】:

在过去的几天里,我们发现错误的邮政编码有所增加。这种情况偶尔会发生,但通常是从岛屿或其他地方出发的路线。以肯塔基州的基韦斯特为例。但是,现在它正在将很多 zip 映射到法国。

11040(地理结果:New Hyde Park, NY 11040, USA)至 08810(地理结果:Dayton, NJ 08810, USA)

https://google.com/maps/api/distancematrix/json?units=imperial&origins=11040&destinations=08810&key=my_key

结果:

{
   "destination_addresses" : [ "Dayton, NJ 08810, USA" ],
   "origin_addresses" : [ "11200 Bizanet, France" ],
   "rows" : [
      {
         "elements" : [
            {
               "status" : "ZERO_RESULTS"
            }
         ]
      }
   ],
   "status" : "OK"
}

64161(地理结果:堪萨斯城,MO 64161,美国)到 30033(地理结果:迪凯特,GA 30033,美国)

https://google.com/maps/api/distancematrix/json?units=imperial&origins=64161&destinations=30033&key=my_key

{
   "destination_addresses" : [ "Decatur, GA 30033, USA" ],
   "origin_addresses" : [ "64520 Came, France" ],
   "rows" : [
      {
         "elements" : [
            {
               "status" : "ZERO_RESULTS"
            }
         ]
      }
   ],
   "status" : "OK"
}

它将邮政编码映射到奇怪的位置。地理定位 API 找到它们并根据邮政编码正确提取地址,只是距离矩阵调用与邮政编码有问题。我只有可用的拉链。为什么今天的一切都指向法国?

【问题讨论】:

  • 所有邮政编码都是美国编码吗?也许将国家添加到请求中。 example
  • 是的,所有的拉链都是有效的。国家有时有效,但并非总是有效
  • 请提供一个国家不工作的例子。您确定它们都是与某个位置相关联的有效美国邮政编码吗?
  • 该国家/地区不起作用,因为我没有添加国家/地区的能力。我只有可用的拉链。此应用程序是国际化的,因此无法对国家/地区进行硬编码。是的,正如您从上面的示例中看到的那样,它们都是有效的邮政编码。这已经工作了一年多 - 上周五早上刚刚停止运行。我们每天处理数以万计的此类错误率非常低。

标签: google-maps google-geocoding-api google-distancematrix-api


【解决方案1】:

对于大容量应用程序,我们也遇到了同样的问题。无法识别只有 5 位数邮政编码的目的地,并将某些 5 位数邮政地址误认为是法国境内的地点。

一种快速的解决方法是将“USA”附加到任何 5 位邮政编码(即“12345 USA”)的末尾,将“Canada”附加到任何包含字母的邮政编码,并将“Australia”附加到任何 4 -数字邮政编码。

我们只与这 3 个国家/地区的地点合作,因此请进行相应调整。

【讨论】:

  • 我认为这也是我的解决方案。不幸的是,它需要代码发布,因此目前正在测试中。希望通过 API 中的设置或其他东西更容易一些。我们发现他们中的很多人也失踪了。 12345 不返回结果,12345,USA 会。
猜你喜欢
  • 1970-01-01
  • 2013-06-29
  • 1970-01-01
  • 2012-11-23
  • 1970-01-01
  • 1970-01-01
  • 2020-05-29
  • 2017-05-17
  • 2021-04-27
相关资源
最近更新 更多