【发布时间】:2020-01-14 16:26:22
【问题描述】:
在 Node.js 中是否可以创建一个虚拟文件夹,如果可以的话?
需要虚拟文件夹的一些上下文:
例如,在 Node.js 中有一个作为中间件的项目正在监听端口 400,因此可以按照http://{IP}:400/?p={%22getWebhooks%22:true} 向我的端点发出请求。端口 400 开放以发出外部请求。
在同一台服务器中,还有另一个中间件是 .NET/C#,它使用端口 80,它只在服务器内部工作(它被外部阻止) 该项目用于在其他数据中集成图像,这些图像保存在该 .NET 项目下的文件夹中,Node.js 需要访问文件夹中的这些图像(以避免必须要求打开另一个端口外部/公共IP)
Node.js 项目在C:\nodeProject
http://{IP}:400/?p={%22getWebhooks%22:true}
图片文件夹位于C:\inetpub\wwwroot\{.netProject}\back_office\resources
为了避免 IIS 需要另一个开放端口,例如端口 200 来提供图像
http://{IP}:200/resources/images.jpg
想要使用 Node.js 提供图像
http://{IP}:400/resources/images.jpg
使用 http 模块不使用 express.js
var server = http.createServer(function (req, res) {
不知道这个用例是否可以使用 node-static 包...
感谢您为我指明正确方向的任何信息。
【问题讨论】:
-
不清楚你想要什么。添加更多详细信息、文件夹结构并告诉我们您想对节点应用程序中的虚拟文件夹做什么。
-
抱歉,Molda 的文字不清楚,已经编辑了问题,你能告诉我它现在是否可读吗?
-
是的,这样好多了。在这种情况下,您可以在不创建任何应用程序的情况下使用 node-static,只需将其全局安装,然后 cd 进入 back_office 并运行
static命令。请参阅docs 或者在应用程序中使用它var file = new static.Server('C:\inetpub\wwwroot\{.netProject}\back_office\'); -
感谢@Molda 能够正如您在命令行中所说的那样: static -p 400 -a 0.0.0.0 -p 是端口的标志,例如端口 400,标志 -a 是 ip在这种情况下“将服务器暴露给您的本地网络”
标签: node.js node-static