Есть ли способ узнать, как удаленный IP-адрес формирует запрос на HTTP-сервере?
Использование "net" для подключения сокета - это socket.remoteAddress, но для http-сервера я получаю unifined для того же .remoteAddress
Привет
Ответ 1
Я просто добавляю это, потому что я наткнулся на эту статью, и мне все же потребовалось немного времени, чтобы понять, что это было так, как вы видите в следующем:
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello ' + req.connection.remoteAddress + '!');
console.log("request received from: " + req.connection.remoteAddress);
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');
Ответ 2
Вы можете использовать метод request.connection для извлечения net.Socket, где вы можете использовать свойство socket.remoteAddress.