我使用connect模块在node.js上写了服务器。当我发出单一请求它工作正常。但是当我向服务器发出2/3个同时请求时,chrome浏览器开始加载我的localhost并且其状态显示为20- 30秒。
仔细观察,我发现http请求在这么长的时间内没有到达服务器。那么我的代码可能出现什么问题?
PS:我在stackoverflow上得到了与此相关的问题但是从这些问题中我都没有得到所需的答案。 代码在这里:
var connect = require('connect');
function data(){
this.name='aman';
this.age='25';
}
var my_data,count=0;
var app = connect()
.use(connect.bodyParser())
.use(connect.static('public'))
.use(function (req, res) {
if(req.url === '/favicon.ico'){
console.log('favicon req. prevented');
}
else{
if(req.url === "/revert"){
res.setHeader('Content-Type', 'application/json');
my_data=new data();
my_data.name=req.body.name;
my_data.age=req.body.age;
console.log('top' + count);
count++;
res.write(JSON.stringify(my_data));
res.end();
}
else{
console.log('bottom' + count);
count++;
res.write(JSON.stringify(my_data));
res.end();
}
}
})
.listen(3000);
console.log('server started');

答案 0 :(得分:0)
您永远不会在res.end();
块中调用if(req.url === '/favicon.ico')
,因此浏览器可能正在耗尽尝试下载favicon的连接池。