var http = require('http');
http.createServer(function (req, res) {
setTimeout(function () {
res.write("hello");
res.end();
}, 10000);
}).listen(8080);
这是我在本地主机上运行的简单 Node 服务器。
现在,如果我同时从两个不同的浏览器点击这个 url localhost:8080,我会在两个浏览器上同时收到响应,即大约 10 秒后。
但另一方面,当我从 chrome 浏览器的两个不同选项卡上这样做时,一个标签需要 10 秒,第二个标签需要 10 秒。
似乎请求正在一个接一个地处理,而不是同时处理。
有人可以解释一下吗?
最佳答案
这是一个已知的浏览器问题,仅当您在同一浏览器(或浏览器配置文件)和单独的选项卡中发出两个请求时才会发生(XHR 请求实际上可以同时完成)。
来源:
Chrome stalls when making multiple requests to same resource? Multiple instances of PHP script won't load concurrently in the same browser from the same URL
关于node.js - 如果来自同一浏览器, Node http 请求不会同时执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44344726/