首页 > 解决方案 > 在 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

标签: node.jsreactjsexpresswebpackelectron

解决方案


如果同一台服务器用于为客户端和后端 API 提供服务,那么您可以使用相对路由 ( /api/getData)。客户端将访问同一台服务器。

如果您的后端托管在不同的服务器上,那么您需要手动将信息传递给客户端。


推荐阅读