Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js和Android同时阻止请求_Android_Node.js - Fatal编程技术网

Node.js和Android同时阻止请求

Node.js和Android同时阻止请求,android,node.js,Android,Node.js,对不起,这个标题。我真的不知道该如何在这里描述我的问题。我的模型中有一个下载计数属性。每次从Android应用程序成功完成下载时,它都会获得下载计数并以增加的数量发出放置请求 所以我的问题是,很可能设备A得到了,在设备A发回增加的数字之前,设备B得到了相同的值 如何防止这种情况发生?为什么要使用GET请求获取下载计数?您不需要这样做来更新NodeJS后端中的下载计数。相反,为什么不在下载完成后触发一个POST请求,并在路由的模型中处理计数的更新呢?因此,您不必担心任何延迟问题 假设您在Mongo

对不起,这个标题。我真的不知道该如何在这里描述我的问题。我的模型中有一个下载计数属性。每次从Android应用程序成功完成下载时,它都会获得下载计数并以增加的数量发出放置请求

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


如何防止这种情况发生?

为什么要使用GET请求获取下载计数?您不需要这样做来更新NodeJS后端中的下载计数。相反,为什么不在下载完成后触发一个POST请求,并在路由的模型中处理计数的更新呢?因此,您不必担心任何延迟问题

假设您在MongooseJS中使用MEAN Stack,以下是我的想法:-

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
    });
  }); 
 });

我还没有试过你的代码,但这是一个很棒的逻辑。。。。顺便说一句,你们为什么用POST而不是PUT?哦,现在我明白了,因为服务器处理所有事情,我能帮上忙吗