【发布时间】:2019-07-10 19:58:10
【问题描述】:
如何修改以下内容以使并发写入失败(使用 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);
});
}
【问题讨论】:
-
到目前为止您尝试了哪些方法,是什么导致您遇到此问题?
-
我已经阅读了有关 If-Match 和 ETag 标头以解决并发写入问题的信息......并且他们将添加 API 支持。我只是找不到文档。有时我会同时接到电话......两者都发出提取,都发出更新,但我失去了第一次更新的结果。典型的并发读修改写问题。有一个解决方案......我只是不知道或找不到合适的文档。
-
那是我读过的文档……我只是找不到有关如何将其应用于同步地图项的文档。