javascript - 如何在实用程序文件中获取已启动的 Express 应用程序的服务器主机和端口

标签 javascript node.js express

我需要知道 lib 下另一个 javascript 文件中的 Express 应用程序的服务器主机名和端口。我怎样才能得到它?

我尝试执行 module.exports = app 但没有成功。

最佳答案

声明 Express 应用程序时,您可以导出一个监听器,该监听器将为您提供主机和地址:

/index.js

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

app.get('/', function(req, res) {
    res.send('Hello world!\n');
});

var listener = app.listen(process.env.PORT || 3000);

module.exports = listener;

然后您可以要求 lib 文件中的该模块能够访问主机和端口:

/lib/index.js

var listener = require('./../index.js');
var address = listener.address();
var host = address.address;
var port = address.port;
console.log('Listening on ' + host + ':' + port);
// < - 'Listening on :::3000'

关于javascript - 如何在实用程序文件中获取已启动的 Express 应用程序的服务器主机和端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35313713/

相关文章:

javascript - 无法删除动态创建的 Div

javascript - 在 for 循环中等待 setTimeout 可以吗?

node.js - Node.js 中的 process.env.PORT 是什么?

node.js - Mongoose find(),如何访问结果文档?

Node.js everyauth集群错误

javascript - 动态获取 vimeo 视频的缩略图和标题

javascript - 为什么我们无法访问内部函数内的 'this'?

javascript - mailto 使用 javascript

javascript - 是否有一个node.js模块可以产生1/f(粉红噪声)波动?

javascript - 使用 XRegExp 验证 JavaScript (Node.js) 中的 UTF-8 名称