GeoKit API 响应不可靠,每次针对相同的有效负载给出不同的响应

Posted

技术标签:

【中文标题】GeoKit API 响应不可靠,每次针对相同的有效负载给出不同的响应【英文标题】:GeoKit API response is unreliable, Gives different responses every time for same payload 【发布时间】:2018-09-04 12:12:15 【问题描述】:

GeoKit gem 版本:1.11.0

有效载荷:“3880 S El Camino Real, San Mateo, CA 94402, USA”

API 调用:Geokit::Geocoders::MultiGeocoder.geocode(payload)

响应 1:“提供商:Google,街道:3880 S El Camino Real..,成功:true”

响应 2:“地理编码期间发生错误:不推荐使用无密钥访问 Google Maps Platform。请在所有 API 调用中使用 API 密钥以避免服务中断。有关详细信息,请参阅 http://g.co/dev/maps-no-account”

疑问: 如果 google API 已根据响应 2 更改为仅接受带有密钥的 api 调用,那么每个 api 调用(上面提到的)都应该给出响应 2。这里的实际预期行为是什么?

请澄清。谢谢。

【问题讨论】:

您能否澄清一下:您何时收到响应 1,何时收到响应 2。 @mbuechmann 响应是随机的,即相同的地址有时会给出响应 1,有时会给出响应 2。例如,我在 api 调用之前有一个调试点,现在,我从交互式进行 API 调用每次使用相同输入或相同输入的不同变体的控制台。响应在 1 到 2 之间是随机的 【参考方案1】:

响应是随机的有点奇怪,但不是那么重要。

首先,作为一般建议,我会更新 geokit gem,因为您使用的版本超过一年。

如果您点击该链接,您可以阅读到,如果没有 API 密钥,就不可能制作这些 api 密钥。要获取 API 密钥,您需要一个免费的计费帐户。设置完成后,您可以获得一个 API 密钥,它每月有价值 200 美元的免费 API 请求(相当多)。

当你有密钥时,你可以通过设置Geokit::Geocoders::GoogleGeocoder.api_key来配置它。

【讨论】:

谢谢!我试试看。

以上是关于GeoKit API 响应不可靠,每次针对相同的有效负载给出不同的响应的主要内容,如果未能解决你的问题,请参考以下文章

如何避免在Reactjs中每次都调用API?

如何在for循环中等待每次迭代并在nodeJS中将响应作为API响应返回

Vuejs计算的API响应过滤器不起作用

Geokit LatLng 两点之间的中点

测试过程之需求疏漏缺陷汇总

Geokit/Geocoder 中的距离和范围计算