Так что я нахожусь в одном шаге от завершения своего веб-приложения, и, так как повторяющиеся события будут основной привлекательностью, я немного разочарован.Даже если я попытаюсь создать повторяющееся событие из шаблона API Календаря Google, оно просто не будет работать.
Основной источник: https://developers.google.com/calendar/create-events Этот шаблон основан на моем:
var event = {
'summary': 'Google I/O 2015',
'location': '800 Howard St., San Francisco, CA 94103',
'description': 'A chance to hear more about Google\'s developer products.',
'start': {
'dateTime': '2015-05-28T09:00:00-07:00',
'timeZone': 'America/Los_Angeles'
},
'end': {
'dateTime': '2015-05-28T17:00:00-07:00',
'timeZone': 'America/Los_Angeles'
},
'recurrence': [
'RRULE:FREQ=DAILY;COUNT=2'
],
};
var request = gapi.client.calendar.events.insert({
'calendarId': 'primary',
'resource': event
});
request.execute(function(event) {
appendPre('Event created: ' + event.htmlLink);
});
Примечание:
let event = {
'summary': title[0], //Name of the show, type: string
'colorId': '2',
'description': 'New episode of '+ title[0],
'start': {
'dateTime': `${initDate}T${hours}:${minutes}:00+09:00`,
//Example: '2019-06-17T01:30:00+09:00'
},
'end': {
'dateTime': `${initDate}T${hourAndMin(hours,minutes)}+09:00`,
//Same but with +30 mins example: '2019-06-17T02:00:00+09:00'
},
'recurrence': [
'RRULE:FREQ=WEEKLY;UNTIL=20190717' //Example 1 month weekly
//I have also tried the exact line from the template.
],
};
let request = gapi.client.calendar.events.insert({
'calendarId': 'primary',
'resource': event
});
request.execute(function(event) {
if (event.htmlLink === undefined){
alert('Error.')
} else {
alert('Event created in your Google Calendar.');
}
});
Когда я удаляю часть 'повторение', она работает, но если я оставляю ее там, я получаю ошибку неверного запроса POST 400 в консоли браузера.