Node.js和Android同时阻止请求

时间:2018-07-05 14:17:05

标签: android node.js

对不起,标题。我真的不知道如何在这里描述我的问题。我的模型中有一个 download_count 属性。每次成功完成从Android App的下载后,它会 GET 进行 download_count 并以数量增加的方式回发 PUT 请求。

所以我的问题是,设备A的GETS很有可能在设备A发送回增加的数字之前,设备B获得相同的值。

如何防止这种情况?

1 个答案:

答案 0 :(得分:1)

为什么要使用GET请求来获取download_count?您无需执行此操作即可更新NodeJS后端中的下载计数。相反,为什么不下载完成后就只触发一个POST请求,并处理路由模型中计数的更新?因此,您不必担心任何延迟问题。

这里是我的想法,假设您将MEAN Stack与MongooseJS结合使用:-

router.post('/update', (req, res)=>{

    user.findById(id, function (err, data) {   //Send some parameter in the POST request so as to uniquely identify whichever entry you wish to update the download_count of
          if (err) console.log(err);
    var new_download_count = data.download_count + 1;  //Updating count

    data.set({ download_count: new_download_count });  //Saving new count
    data.save(function (err, updatedData) {
          if (err) console.log(err);

          res.send(updatedTank);   //Indicate new object
    });
  }); 
 });