0

我正在使用 openweathermap api 使用提供的 api 将预报打印到屏幕上。

我想要做的是获取未来或过去给定时间的预测,我可以在 api 调用的结果中看到这些信息。我不确定如何获得这些信息?它看起来是 unix 时间戳和人类可读格式,但我可以看到如何在 api 中打印出给定时间的预测?

谢谢

Example API code
    http://api.openweathermap.org/data/2.5/forecast?lat=51.5072&lon=0.1275&units=metric

Example forecast "dt_txt":"2013-09-14 00:00:00"},{"dt":1379127600,

Example web page

<html>
<head>
<title>Weather</title>
    <meta charset="utf-8">

    <script src="http://code.jquery.com/jquery-1.7.min.js" ></script>
    <script src="http://code.jquery.com/ui/1.7.0/jquery-ui.js" ></script>

<script>
function getWeather(callback) {
    var weather = 'http://api.openweathermap.org/data/2.5/forecast?lat=51.5072&lon=0.1275&units=metric';
    $.ajax({
      dataType: "jsonp",
      url: weather,
      success: callback
    });
}

// get data:
getWeather(function (data) {
    console.log('weather data received');
    console.log(data.list[0].weather[0].description); 
    console.log(data.list[0].weather[0].main);  
});

getWeather(function (data) {
    document.write('weather data received');
    document.write('<br>');
    document.write(data.list[0].weather[0].description);
document.write('<br>');
    document.write(data.list[0].weather[0].main);
document.write('<br>');
    document.write(data.list[0].main.temp);
document.write('<br>');
});
</script>
</body>
</html>
4

1 回答 1

1

我建议你尝试使用moment.js,这是一个 jquery 插件,用于任何与时间有关的事情。

moment(dt).calendar();

这是用于格式化openWeatherAPI中的 dt

谢谢

于 2014-07-16T11:42:40.413 回答