В этой статье мы увидим, как создавать события Календаря Google с помощью приложений Node.js.
Предпосылки
- Базовое понимание Node.js и javascript.
- node и npm установлены.
- Ваше приложение должно быть аутентифицировано. Я объяснил всю процедуру в этом блоге.
- Массив SCOPES в приведенной выше статье следует изменить в соответствии с потребностями вашего приложения.
Для начала создайте файл Calendar.js в каталоге своего проекта и вставьте приведенный ниже код.
Давайте рассмотрим это шаг за шагом.
Сначала мы создаем класс Event, который включает функцию addEvent и конструктор. Класс инициализируется объектом auth, который мы получаем при успешной аутентификации приложения (объяснено здесь).
Функция addEvent принимает 4 параметра (все строковые типы): краткое описание, описание, start_date и end_date, которые затем добавляются к объекту события. Формат этого объекта события такой же, как в официальной документации.
Здесь важно отметить формат времени, который
'2020-03-16T11:00:00'
2020-03-16 представляет дату в формате ГГГГ-ММ-ДД, а 11:00:00 - время. Они оба разделены буквой «Т».
У объекта напоминания есть переопределение атрибута, которое отправляет пользователю уведомления в указанные минуты до начала события.
Теперь мы отправляем запрос в Calendar API, добавляя объект события, чтобы вставить событие в календарь пользователя.
Теперь создайте экземпляр класса Event и вызовите функцию addEvent.
var event = new Event(auth); event.addEvent('Summary','Description','2020-03-16T11:00:00','2020-03-18T11:00:00')
Если запрос будет успешным, будет создано событие, которое будет отображаться в панели управления календаря пользователя.
Edit-1: я составил список часто задаваемых вопросов по API Google в этой статье.
Редактировать 2: я разработал готовый к работе API, который взаимодействует с GMAIL API и обрабатывает все, от получения и запроса писем до декодирования тела письма. Если вы хотите интегрировать GMAIL API в свое приложение, попробуйте это здесь.
Хотите разработать приложение, использующее один из API Google?
Напишите письмо по адресу [email protected]