node.js - 在 Webpack 中访问动态端口号
问题描述
我正在构建一个将在用户本地主机(例如localhost:8080
)上运行的电子/nodejs/react 应用程序。
我正在使用Portfinder来定位一个空闲端口并在该端口上运行应用程序。
portfinder
.getPortPromise()
.then(port => {
app.listen(port, function() {
console.log("Server started on localhost:" + port + ", Node ENV " + app.get("env"));
});
})
.catch(err => {
//Could not get a free port, `err` contains the reason.
});
在 React 应用程序中,我需要访问此端口号以将http
请求发送回节点服务器。
package.json
除了在文件中使用环境变量之外,有没有办法在 React或Webpack 中访问这个动态创建的端口号.env
?
解决方案
如果同一台服务器用于为客户端和后端 API 提供服务,那么您可以使用相对路由 ( /api/getData
)。客户端将访问同一台服务器。
如果您的后端托管在不同的服务器上,那么您需要手动将信息传递给客户端。
推荐阅读
- python - 如何使用pyvis更改子图的颜色?
- c# - 任务使用内部 Theadpool 或任务调度器,然后新线程如何在任务管理器中显示
- python - 通过 JSON 文件中的 dicts 列表循环
- python-3.x - 无法调用从导入模块创建的机器人框架中的关键字
- c# - System.IO.FileNotFoundException:“在 asp.net MVC 中找不到文件”
- javascript - 从文本中删除我认为是静态的
- sql - 我需要将以下函数从 DB2 转换为 Oracle,有人可以帮忙吗?我不知道 DB2
- postgresql - 使用安装在不同 Postgres Schema 中的 Postgis 扩展
- postman - newman 运行的文件夹中的断言总数
- sql - 计数 2 Group by(s) 没有子查询/CTE