Я просто тренируюсь с моим первым вызовом API в Node.JS. Использование API YahooWeather для создания настраиваемой страницы погоды. Погода работает, но я также хочу узнать текущее местное время целевого местоположения, которое оно не предоставляет. Однако он предоставляет имя зоны (например, Америка / Нью-Йорк), которое я хотел бы подключить ко второму API под названием Timezone.db, который «может» указывать местное время на основе заданного имени зоны. Я просто не уверен, как передать информацию из API YahooWeather в API Timezone.db, поэтому я могу затем отправить обе переменные данных на свою домашнюю страницу шаблона для обработки для отображения. Планирование использовать местное время для динамического переключения на фон страницы ночного изображения, если оно после времени заката в целевом местоположении.
Пока у меня работает API YahooWeather, и вот код для этого, просто не знаю, где вписывается во 2-й вызов API для часового пояса, используя часовой пояс, извлеченный из Yahoo Weather API. Пример запроса к db API часового пояса будет выглядеть следующим образом:
http://api.timezonedb.com/v2.1/get-time-zone?key=# ######## & format = json & by = zone & zone = America / New
var express = require("express");
var app = express();
var bodyParser = require("body-parser");
var location = "";
app.use(express.static("public"));
app.use(bodyParser.urlencoded({extended: true}));
app.set("view engine", "ejs");
app.get("/", function(req, res){ // landing page route
location = req.query.search;
if (location === undefined){
location = "paso robles, ca"; `// default location if left undefined`
//console.log("location = ", location);
}
var OAuth = require('oauth');
var header = {
"X-Yahoo-App-Id": "########"
};
var request = new OAuth.OAuth(
null,
null,
'###########################################################################################',
'#######################################',
'1.0',
null,
'HMAC-SHA1',
null,
header
);
request.get(
'https://weather-ydn-yql.media.yahoo.com/forecastrss?location=' + location + '&format=json',
null,
null,
function (err, data, result) {
if (err) {
console.log(err);
return;
} else {
parsedData = JSON.parse(data);
console.log("Parsed Data = ", parsedData);
res.render("home", {parsedData: parsedData});
}
}
);
});
Любая помощь, которую вы, ребята, можете оказать этому нубу, будет принята с благодарностью. -Спасибо!