如果第一个请求尚未完成,有时我们需要限制执行来自用户的重复请求。例如:我们确实希望在某些服务中注册用户,并且只有在那之后才将他放入具有外部id的数据库中。我想有一个服务,我可以设置受保护的路线。 我通过在request.start() - >处检查标志来解决了这个问题。并在请求完成后将其删除。无论如何,我正在寻找你的建议。
答案 0 :(得分:0)
我认为您需要自己将其构建到路由处理程序中:
var inProgress = []
var handleRegisterRoute = function create(req, res, next) {
var id = req.user.id
var found = _.find(inProgress, function(item){
return item = id
})
if(found){
res.send('Dont think twice, its aright')
return
} else {
inProgress.push(id)
completeRegister()
inProgress= _.without(inProgress, id);
req.send()
return
}
}
再次这是伪代码 - 我要写的内容的要点。您可能需要存储" inprogress"在整个服务器场可引用的更好的数据存储中 - 某种DB。