Si je me souviens bien, il y avait quelques jours pour afficher "localhost". Je ne suis pas sûr de ce qui a changé la valeur de server.address (). J'ai lu ici qu'il renvoie une adresse IPv6 (: :) si elle est disponible mais désactivée sur mon PC. https://nodejs.org/api/http.html#http_server_listen_port_hostname_backlog_callback
Comme le disent les docs,
Commencez à accepter les connexions sur le port et le nom d'hôte spécifiés. Si le nom d'hôte est omis, le serveur acceptera les connexions sur n'importe quelle adresse IPv6 (: :) lorsque IPv6 est disponible, ou toute adresse IPv4 (0.0.0.0) sinon. Une valeur de port de zéro affectera un port aléatoire.
Ainsi, le code suivant afficherait 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)
});
Mais si vous ajoutez un nom d'hôte explicite:
var server = app.listen(3456, "127.0.0.1", function () {
Il imprimerait ce que vous voulez voir: running at http://127.0.0.1:3456
Aussi, vous voudrez peut-être utiliser certaines bibliothèques IP comme indiqué dans cette réponse
Cordialement, Alexander