繁体   English   中英

快速并发Http请求

[英]Express Concurrent Http Request

用户可以触发多个并发HTTP请求来表示服务器。 在服务器端,我要阻止除第一个请求(针对该特定用户)以外的所有并发请求,然后执行一些操作并逐个解除阻止其他请求。

用户的请求不应被其他用户的请求阻止。

如何在nodejs中实现呢? 用户的请求可以通过Authorization标头识别(唯一)。

谢谢

有很多方法可以实现这一目标,但我能想到的最简单的方法是:

var blocked = {};
app.get('/bla', function(req, res){

    var id = getIdFromRequest(req);

    if (blocked[id]) // if true then another request is being served
        return res.send('Concurrent requests not allowed');

    blocked[id] = true;

    // do your thing here

    // and respond
    res.send('some data');

    // unlock the user
    delete blocked[id];
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM