限制,多个客户端请求,使用express在节点js中进行线程化

时间:2015-04-07 11:08:36

标签: javascript node.js express

我正在尝试使用express编写一个简单的API管理器。

我已经注册了一条简单的路线,我在10秒后回复了每个备用请求。我想我应该得到我没有得到的其他所有要求的即时回应。 即使是请求也应该被绞死,但奇怪的请求应该立即给我回复,而我没有收到。请指导如何做到这一点。

    var express = require('express');
    var apiRoutes = express.Router();

    var i=0;
    apiRoutes.get('/',function(req,res){
      i++;
      if(i%2==0)
      {
        setTimeout(function(){res.json({message:"i responsed after 5"})},5000);
      }
      else
      {
        res.json({message:"i responsed immediately"});
      }

    });


    module.exports = apiRoutes;

1 个答案:

答案 0 :(得分:1)

经过一番搜索,我找到了this answer。所以它似乎是浏览器,而不是快速代码。

要对此进行测试,请从终端(curl localhost:3000)点击服务器,您可以看到它的行为符合您的预期!

或者,使用此行apiRoutes.get('/:number', function(req,res){,然后在浏览器中点击localhost:3000/1localhost:3000/2,您也会看到预期的行为。