如何从@ loopback / rest收听带有RestAppliction扩展名的unix套接字?
我仅在文档中找到用于侦听某些IP地址和端口的选项。它是本机还是有一种扩展它的方法,以从nodejs添加httpServer的默认行为,以将unix套接字的路径传递给listen方法?
我已经搜索了堆栈溢出,github存储库,文档,但没有找到与其相关的任何内容。我研究了使用@ loopback / rest用于提供http服务器实现的http-server程序包代码,并且仅发现默认情况下,它仅具有传递主机的ip和端口的选项,而不是unix套接字,但是我做到了'nt看到了一种简单的方法来扩展RestApplication来更改http提供程序。
在我当前拥有的index.js中:
const application = require('./dist');
module.exports = application;
if (require.main === module) {
// Run the application
const config = {
rest: {
port: +(process.env.PORT || 3000),
host: process.env.HOST,
openApiSpec: {
// useful when used with OASGraph to locate your application
setServersFromRequest: true,
},
},
};
application.main(config).catch(err => {
console.error('Cannot start the application.', err);
process.exit(1);
});
}
我和我可以做类似的事情:
// ...
const config = {
rest: {
// ...
socket: '/path/to/unix/socket.sock',
// ..
}
// ..
}
// ..
或者像Express一样传递http服务器的实例:
const server = require('http').createServer();
// ...
const config = {
rest: {
// ...
server
// ...
}
// ...
}
// and then
server.listen('/path/to/socket.sock');