gpt4 book ai didi

node.js - 学习nodeexpress,为什么控制台不输出 'localhost'?

转载 作者:太空宇宙 更新时间:2023-11-03 22:30:08 24 4
gpt4 key购买 nike

我正在学习一般使用express和node,我意识到我可能会错过许多基础知识。下面是启动服务器来提供静态文件的代码,据我了解,控制台应该在启动时输出服务器地址和端口号。

var express = require('express');
var app = express();

app.use(express.static('resources'));
app.use(express.static(__dirname));

app.get('/', function (req, res) {
res.sendFile( __dirname + "/" + "index.html" );
})

var server = app.listen(3000, function () {

var host = server.address().address
var port = server.address().port

console.log("Server listening at http://%s:%s", host, port)

})

我期待看到“服务器正在监听 http://localhost:3000” "' 但我得到: '服务器正在 http://:::3000 监听 '

谁能解释一下这是什么意思谢谢

最佳答案

请参阅 net.Server::address() 上的文档.

它可能不会说localhost,因为您没有指定您正在监听的地址。

默认情况下,没有特定地址,因为无论发送到哪个地址,它都会接受端口上的传入请求。

它可以接受的各种地址的示例是 localhost127.0.0.1192.168.1.72 或者如果您通过端口转发服务器您的网络,它可能是您的全局 IP 地址。如果您明确指定一个地址,它将拒绝来自所有其他地址的传入请求。

关于node.js - 学习nodeexpress,为什么控制台不输出 'localhost'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38309843/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com