我正在制作一个流星移动应用程序,该应用程序显示有关当地景点的信息,我要展示的其中一项是每个地点的天气。我目前使用latlng坐标存储我的位置,并且可以通过半径进行搜索。我想使用openweathermap api来提取一些有用的“当前条件”信息,以便当用户查看条目时他们可以看到基本的天气数据。理想情况下,我想限制传出请求的数量,以保持页面的快节奏(以及API请求下降)
我想知道我是否可以创建我定期更新的天气数据的服务器集合,服务器端(每小时?)我的客户端然后查询(可能使用mongo $ near lookup?) - 这样我的所有数据正在流星内处理,而不是每个客户都要从API中获取最新数据。我不想迭代遍历列表中的所有位置,并为每个位置单独调用api,因为我有大约。 400个地点(!)。我担心我不熟悉API请求(以及流星本身),如果这是一个措辞不好的问题,那么道歉。
我不完全确定这是否可行,或者它是否是最好的方法 - 任何建议(以及任何有用的代码片段的链接!)将不胜感激!
好的,我还没有设法让这个工作,但我有一些更有用的数据细节! 如果我向openweather API发出请求,我可以获取所有位置的数据(我想添加/更新到集合)。然后我可以定期查找,而不是每次用户查看某个位置时直接向他们发出客户端请求。 JSON数据如下所示:
{
"message":"accurate",
"cod":"200",
"count":50,
"list":[
{
"id":2643076,
"name":"Marazion",
"coord":{
"lon":-5.47505,
"lat":50.125561
},
"main":{
"temp":292.15,
"pressure":1016,
"humidity":68,
"temp_min":292.15,
"temp_max":292.15
},
"dt":1403707800,
"wind":{
"speed":8.7,
"deg":110,
"gust":13.9
},
"sys":{
"country":""
},
"clouds":{
"all":75
},
"weather":[
{
"id":721,
"main":"Haze",
"description":"haze",
"icon":"50d"
}
]
}, ...
理想情况下,我想构建我自己的本地“天气”集合,我可以使用mongo的$ near(以保持出站请求,并加快速度)进行搜索,但我不知道这是否可行,因为格式是数据重新出现 - 我想我需要像这样构建我的位置数据才能使用地理搜索:
"location": {
"type": "Point",
"coordinates": [-5.47505,50.125561]
}
我的问题是:
这个问题太长/太多了吗?感觉就像这样。也许我应该把它分开。