Nodejs服务器主机名

好的,在Node.js中,让我的服务器获得请求的主机名似乎很简单:

app.get('/', function(req,res){ console.log(req.headers.host); }); 

有一个简单的方法来确定我的实际HTTP服务器的主机名? 例如,我的服务器运行在地址http://localhost:3000 – 我可以编程方式确定这个地址? 我正在使用expressjs。

是的,你可以使用;

 var express = require('express'), app = express(), server = require('http').createServer(app); server.listen(3000, function(err) { console.log(err, server.address()); }); 

应该打印

 { address: '0.0.0.0', family: 'IPv4', port: 3000 } 

你也可以通过以下方式来获取os的主机名称;

 require('os').hostname();