Функция Twilio - синхронизация данных - PullRequest
0 голосов
/ 10 июля 2019

Как мне изменить следующее для сбоя при одновременной записи (с использованием заголовков If-Match и ETag)?

let sync = Runtime.getSync();
exports.handler = function(context, event, callback) {
  let map = sync.syncMaps("MyMap");
  map.syncMapItems(event.Digits).fetch().then(item => {
      map.syncMapItems(event.Digits).update({key: item.key, data:item.data + 1})
      .then(item2 => {
      }).catch(err => {
        console.log("Update Error:" + err);
      });
   }).catch(err => {
       console.log("Fetch Error:" + err);
   });
}

1 Ответ

1 голос
/ 14 июля 2019

Разработчик Twilio здесь.

В документации по изменению данных и защите от конфликтов в Twilio Sync действительно упоминается, что вы можете использовать If-Match и ETag заголовки.

В документации говорится, что:

Обратите внимание, что поддержка заголовков If-Match в настоящее время не включена в вспомогательных библиотеках REST.Поддержка скоро появится.

Итак, если вы хотите использовать заголовок If-Match, чтобы убедиться, что вы не записываете конфликтующие записи в элемент карты синхронизации, вам нужно будет самостоятельно создавать запросы HTTP.

Все в документации для документов синхронизации и If-Match также применимо к отдельным элементам карты синхронизации.

Документация по API REST для элементов карты синхронизации включает в себя инструкции поСоздайте URL-адрес, необходимый для самостоятельной отправки запроса.

Дайте мне знать, если это поможет, и если у вас возникнут проблемы с выполнением запросов самостоятельно.

...