Вставьте несколько calendar.events в календарь Google (API) - PullRequest
0 голосов
/ 22 мая 2018

Я использую Google API, https://developers.google.com/calendar/v3/reference/events/insert для вставки события в календарь.Одно событие вставлено успешно, но есть ли способ, которым мы можем вставить несколько событий в одну выноску?

Ответы [ 2 ]

0 голосов
/ 29 мая 2018

Для добавления / удаления / обновления событий необходимо использовать пакетную обработку.

Зачем использовать пакетную обработку? Основная причина использования API пакетной обработки данных заключается в сокращении нагрузки на сеть и, следовательно, в повышении производительности.

Вот пример, показывающий использование пакета для динамического добавления событий с использованием javascript / typescript,

createMultipleEvents() {
    const events = [ {
      'summary': 'sample test events1',
      'location': 'coimbatore',
      'start': {
          'date': '2018-08-29',
          'timeZone': 'America/Los_Angeles'
      },
      'end': {
          'date': '2018-08-29',
          'timeZone': 'America/Los_Angeles'
      }
  },
  {
    'summary': 'sample test events2',
    'location': 'coimbatore',
    'start': {
        'date': '2018-08-29',
        'timeZone': 'America/Los_Angeles'
    },
    'end': {
        'date': '2018-08-29',
        'timeZone': 'America/Los_Angeles'
    }
},
];
const batch = gapi.client.newBatch();
events.map((r, j) => {
  batch.add(gapi.client.calendar.events.insert({
    'calendarId': 'primary',
    'resource': events[j]
  }))
})
batch.then(function(){
  console.log('all jobs now dynamically done!!!')
});
  }
0 голосов
/ 22 мая 2018

Как указано в этом потоке , если вы хотите вставить несколько событий одновременно, вы должны использовать batch .

 var batch = gapi.client.newBatch();
 batch.add(gapi.client.calendar.events.insert({
     'calendarId': 'primary',
     'resource': events[0]
 }));
 batch.add(gapi.client.calendar.events.insert({
     'calendarId': 'primary',
     'resource': events[1]
 }));
 batch.add(gapi.client.calendar.events.insert({
     'calendarId': 'primary',
     'resource': events[2]
 }));
             ......

 batch.then(function(){
     console.log('all jobs done!!!')
 });

Вы также можете проверить эту ссылку для дополнительной справки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...