服务器的NodeJS主机名(Nodejs Server Hostname)

2019-07-31 20:38发布

好了,似乎在Node.js的很容易获得请求的主机名被到我的服务器进行:

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

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

Answer 1:

是的,你可以使用;

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 }

你也可以retreive由下列操作系统的主机名;

require('os').hostname();


Answer 2:

0.0.0.0表示这是对所有主机上可用的网络接口(IP地址)的监听。



文章来源: Nodejs Server Hostname