我已经为node.js
尝试了基于生成器的async lib co(GitHub)这是代码。我使用共同表达和共同等待。
正如您所见,客户在收到回复之前等待10秒钟。 我的问题是 - 如果我尝试对此URL运行多个请求,并且所有函数都将阻止下一个调用。
我如何同时对此网址运行多个调用? 本地主机:8000 /测试
var fs = require('fs');
var co = require('co');
var express = require('express');
var wrapper = require('co-express');
var app = wrapper(express());
var wait = require('co-wait');
app.get('/test', function* (req, res, next) {
yield waitAndAnswer(res)
});
function* waitAndAnswer (res) {
yield wait(10000);
res.send('Done: ' + Date.now());
}
app.listen(8000);
答案 0 :(得分:0)
我试图通过单个浏览器调用此网址时犯了一个错误。看起来它是浏览器的标准行为,因此此代码按预期工作。 Jonathan Ong回答了我的问题。
如果您通过浏览器拨打电话,那么它就是浏览器。如果你通过卷曲或其他东西来调用它,它应该没问题。 - Jonathan Ong