我想从节点js服务器向终端输出一条消息,例如“在端口{port_#}上监听”。
我找到了文档,例如NodeJS:如何获取服务器的端口?,但他们只谈论Express JS。
我正在使用ConnectJS方面进行连接。所以我的代码看起来像:
var connect = require('connect');
var serveStatic = require('serve-static');
connect().use(serveStatic(__dirname)).listen(8080);
console.log("Listening on port %d", connect.address().port);
但是,这不起作用。如何将端口登录到终端?
您正在尝试调用.address()
连接库的方法。该方法不存在。在的实例上甚至都不存在connect()
。您正在寻找的方法存在于http.Server
对象中。
创建连接实例时,将返回一个应用程序。当您告诉应用程序收听时,您可以提供一个回调,当应用程序开始收听时会被调用。以http.Server
绑定到的上下文调用此回调this
。
var connect = require( 'connect' )
var app = connect()
app.listen( 8080, function(){
//`this` is the underlying http.Server powering the connect app
console.log( 'App is listening on port ' + this.address().port )
})
从用于连接的源代码中:
app.listen = function(){
var server = http.createServer(this);
return server.listen.apply(server, arguments);
};
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句