2014-06-24 11 views
7

Bağlantı noktası 8000'de dinlemede bulunan HTTP sunucusunun aşağıdaki çok temel bir kodunu okudum. Sunucunun IP adresini nasıl belirleyebilirim? 'sunucu' değişkeninden alındı ​​mı? Sunucuyu otomatik olarak sunucuya (ip, port vb.) Otomatik olarak göndermem gereken bir uygulama üzerinde çalışıyorum.Node.js Belirli bir bağlantı noktasında dinleme yapan http sunucusunun IP adresi nasıl alınır

ben size sunucu bağlıdır adresi istediğiniz varsayarsak, yardım

var http = require("http"); 
var server = http.createServer(function(request, response) { 
  response.writeHead(200, {"Content-Type": "text/html"}); 
  response.write("Hello!!!"); 
  response.end(); 
}); 

server.listen(8000); 
console.log("Server is listening...."); 

cevap

2

için teşekkürler node.js yeniyim, sen IP almak için server.address.address kullanabilirsiniz sunucu adresi bağlı. Benzer şekilde, sunucunun bağlı olduğu bağlantı noktası numarasını almak için server.address.port'u kullanabilirsiniz.

Kimden: http://nodejs.org/api/net.html#net_server_address.

+0

Onun bunu çalışmıyor gibi bir şey kaydeder

server.address() 

0.0.0.0 ip address.Any Ideas? {"adres": "0.0.0.0", "aile": "IPv4", "bağlantı noktası": 8000} – Sohaib

+0

Kimden: http://nodejs.org/api/http.html#http_server_listen_port_hostname_backlog_callback. Bağlamak için bir ana makine adı geçmezseniz, varsayılan olarak 0.0.0.0'a bağlanır. Sadece bir port belirttiğiniz için varsayılan olarak 0.0.0.0'a bağlanacak ve server.address'in döndürülen nesnesi doğru olacaktır. –

+0

Alistair MacDonald'ın cevabı: server.address()., Server.address.address –

9

Kullanım aşağıdadır:

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

konsol, kullanımına sunucunuzun IP giriş yapmak için::

console.log(server.address().address); 
+1

Bu 'adres' bir yöntem değil, bir özellik olarak doğru cevaptır – divillysausages

İlgili konular