Первая работа с API Календаря Google или с API Google в целом. Я пытаюсь автоматически отобразить следующие несколько событий календаря на моей веб-странице. Вот что у меня сейчас -
var myAPIKey = ""; // obviously with my actual API key
var calendarId = ""; // with my calendar ID
function init() {
alert("init called");
gapi.client.setApiKey(myAPIKey);
gapi.client.load('calendar', 'v3').then(listUpcomingEvents);
alert("init call finished");
}
function listUpcomingEvents() {
alert("listUpcomingEvents called");
var optionalArgs = {
timeMin: (new Date()).toISOString(),
showDeleted: false,
singleEvents: true,
maxResults: 10,
orderBy: 'startTime'
};
alert("optional args set");
var response = gapi.client.Calendar.Events.list(calendarId, optionalArgs); // Here's the issue
alert("var response created");
var events = response.items;
alert("events arrayed");
var d_names = ["Mon", "Tues", "Wed","Thur", "Fri", "Sat","Sun"];
var thisDate = '';
var thisDay = '';
if (events.length > 0) {
for (i = 0; i < events.length; i++) {
var event = events[i];
var when = event.start.dateTime;
if (!when) {
when = event.start.date;
thisDate = new Date(when);
thisDay = thisDate.getDay();
}
appendPre(d_names[thisDay] + ': ' + event.summary);
}
alert("events appended");
} else { }
}
Большая часть этого заимствована прямо из примера Google здесь . Это ломается в var response = gapi.client.Calendar.Events.list(calendarId, optionalArgs);
т.е. предупреждение после того, как оно не стреляет. У Google изначально это было так же, как var response = Calendar.Events.list(calendarId, optionalArgs);
, но я попытался добавить бит gapi.client на тот случай, если это помогло ... не помогло.
Итак, что мне здесь не хватает в том, как вызывать функции календаря API? Я уверен, что это довольно просто / очевидно, я просто не делал этого раньше.
(насколько я могу судить, все необходимые функции API включены?)
Заранее спасибо!