Я не думаю, что вы на самом деле слушаете порт с кодом, на который вы ссылаетесь.
var http = require('http');
http.createServer(function(req,res){
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(8000);
console.log('Server running at http://127.0.0.1:8000/');
Вы никогда не объявляете объект http как фактически прослушивающий порт / ip с .listen()
function.
Кроме того, вам не нужно ждать, пока объект req испустит что-либо для ответа.Функция вызывается, когда запрос завершен.Вы можете прослушивать конкретные запросы и направлять их соответствующим образом, сохраняя объект http.Server в переменной.
var server = http.createServer();
server.listen(8000);
server.on('request', function(req,res){ /* do something with the request */ });
Дополнительную документацию по объекту http можно найти в документах node.js для http