Wunderground API - country/state/city 混合问题

Wunderground API - country/state/city mix issue

我使用 Google Maps Place API 仅限于城市研究,因此我得到城市、州和国家以及 conditionsforecast10day Wunderground API

似乎有时我在构建 Wunderground API 端点时遇到问题。

当我只有一个国家/地区的城市可用时,我有这个端点:

http://api.wunderground.com/api/{KEY}/conditions/q/IT/Milan.json

它就像一个魅力。

当我知道我正在搜索的城市在许多国家/地区可用时,我将 "state" 值添加到端点,如下所示:

http://api.wunderground.com/api/{KEY}/conditions/q/US/PA/Lancaster.json

当我在印度搜索新德里时出现问题(此时我恐怕也搜索其他城市):

http:// api.wunderground.com/api/{KEY}/conditions/q/IN/DL/NewDelhi.json

在这种情况下,响应是这样的:

"error": {
    "type": "querynotfound",
    "description": "No cities match your search query"
}

但是如果我通过 "zmw" 参数调用印度新德里的条件/

http://api.wunderground.com/api/{KEY}/conditions/q/zmw:00000.1.42182.json

我在 "display_location" 对象中看到这个:

"city":"New Delhi / Safdarjung",
"state":"DL",
"state_name":"India",
"country":"IN"

所以,从形式上看,我的终点似乎是正确的。 我哪里出错了?

PS:我正在使用 Google Maps Place API 因为它也 UI 准备好了。 :)

我联系了Wunderground tech support

好吧 - 正如他们告诉我的那样 - 他们的 API 有点不一致,所以对于美国以外的地方,最好的解决方案是通过 lat/lng 拨打 API 电话值,以确保始终具有相同的响应结构。

对我来说这是可能的,因为通过 Google Maps Places 我还保存了我正在搜索的城市的 lat/lng 值。

因此,您可以构建此端点:

https://api.wunderground.com/api/{KEY}/conditions/q/{lat},{lng}.json

它就像一个魅力!