我仅使用HTTP模块运行准系统Node.js服务器。我创建了一个HTTP服务器,正在侦听套接字连接和请求。我注意到当我使用chrome进入本地主机时,连接了三个套接字,并且对“ /”发出了两个请求。我知道,使用其他一些网络服务器,我看到Chrome如果没有收到快速响应(大约5秒),则多次请求同一件事,但是我立即发送了响应,但Chrome仍在连接/请求多个次。
是否应该这样做?如果应该,应该处理重复的请求吗?
我的相关代码
let server = http.createServer();
server.listen({
host: host,
port: port
});
server.on('connection', function(socket){
// gets printed 3 times
console.log('connection')
});
server.on('request', function(request, response){
// gets printed two times
console.log('hi')
// yet chrome only receives one response (seemingly)
response.end('hi')
});
编辑:一半解决。现在我正在打印request.url
,我看到
/
和
favicon.ico
因此,有2个请求,但仍然有3个套接字连接。我猜每个请求都在一个新的套接字上吗?
答案 0 :(得分:1)
所有单独的图片,css和javascript肯定会发出http请求。毫无疑问。