我正在使用NWS REST API作为我正在制作的应用程序的天气服务。我最初不愿意使用NWS,因为它的文档很糟糕,但我无法抗拒,因为它完全免费提供。
现在我正在尝试使用它,我遇到了一些困难。当提出多天的请求时,最低温度在几天内显示为零。
(编辑:因为我一直在测试API,我发现它并不总是最低温度为零。它可以是最大温度或降水,它似乎是完全随机的。如果你想制作使用他们的网络界面测试来电,你可以在这里进行:http://graphical.weather.gov/xml/sample_products/browser_interface/ndfdBrowserByDay.htm
此处:http://graphical.weather.gov/xml/sample_products/browser_interface/ndfdXML.htm)
令人惊讶的是,在他们的网站上,可以获得最低温度: http://forecast.weather.gov/MapClick.php?textField1=40.83&textField2=-73.70
你会在最低温度下看到它填充了大约5个(有时更少,它是不一致的)空白字段,表示<value xsi:nil="true"/>
如果有人可以帮助我,我将非常感激,使用NWS API有时会有点压倒性。
谢谢,
答案 0 :(得分:3)
根据我对文档here和here的理解,nil值只表示数据不可用。
在不对NOAA的数据架构做出假设的情况下,可以想象通过API获得的信息可能与其网站显示的信息不同。
缺少的值由空元素表示,xsi:nil =“true”(R2.2.1)。
返回的Nil值似乎涉及时间段。请注意这些请求中1中time-layout
键之间的差异(请参阅第5.3.2节):
数据时间不同。
<layout-key>
元素密钥是使用以下约定派生的:
- “k”代表钥匙。
- “p24h”表示数据周期长度为24小时。
- “n7”表示数据次数为7。
- “1”是用于保持布局键唯一的序号。
醇>
此处,startDate
是因素。离开它包括更多的时间,并可能解释一些尚未提供的请求数据。
每份文件:
您想要NDFD数据的开始日期。如果字符串为空,则假定开始日期是数据库中最早可用的日期。如果想要缩短 的检索时间窗口数据(少于整整7天),例如需要 ,则需要此输入 。如果用户想要第2-5天的数据。
我没有体验到你提到的随机性。 NOAA's Yahoo! Groups forum上的人可能会告诉你更多信息。