노드에 다음 프로그램을 작성하면 :
http.createServer(function (req, res) {
if( req.method == 'GET' ) {
var body = ''; req.on('data', function(data) { body += data });
req.on('end', function() {
console.log('request ended')
});
}
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('142\n');
}).listen(3500);
와 다음 서버를 공격 http://xxx.xx.xxx.xx:35010
내가보고 request ended
내 콘솔에 두 번을 – 나는 확실히 하나의 HTTP 요청을 두 번 실행이 원인이되는 이유를 모르겠어요.
답변
이는 정상적인 현상입니다. 브라우저에서 두 번 이상의 호출을합니다.
/favicon.ico
예를 들어 대부분의 브라우저는 호출을 합니다.
URL을 기록해보십시오.
console.log(req.url);
그리고 당신은 무엇이 호출되는지 볼 수 있습니다.
답변
일반적으로 favicon.ico
브라우저에서 가져옵니다. 그래서 두 통화.
이 문제에 대한 해결책은 요청 URL을 가져 오는지 여부를 확인할 수 있습니다 favicon.ico
.
http.createServer(function (req, res) {
if (req.url != '/favicon.ico') {
// do your stuffs
}
}).listen(3500);