私の記憶が正しければ、数日前に「localhost」が表示されていました。何が変わってserver.address()。addressが二重コロン(::)を返すようになったのかわかりません。ここでは、IPv6アドレス(::)が使用可能であれば返されますが、私のPCでは無効になっていることを読みました。 https://nodejs.org/api/http.html#http_server_listen_port_hostname_backlog_callback
ドキュメントが言うように、
指定されたポートとホスト名で接続の受け入れを開始します。ホスト名を省略すると、サーバーはIPv6が使用可能な場合はIPv6アドレス(::)で接続を受け入れ、それ以外の場合はIPv4アドレス(0.0.0.0)で接続を受け入れます。ポート値がゼロの場合、ランダムなポートが割り当てられます。
したがって、次のコードはrunning at http://:::3456
:
var express = require('express');
var app = express();
var server = app.listen(3456, function () {
var Host = server.address().address;
var port = server.address().port;
console.log('running at http://' + Host + ':' + port)
});
ただし、明示的なホスト名を追加する場合:
var server = app.listen(3456, "127.0.0.1", function () {
あなたが見たいものを印刷します:running at http://127.0.0.1:3456
また、 this answer で示されているように IP lib を使用することもできます。
よろしく、アレクサンダー