生产中的代理 React for fetch API express



我正在开发一个带有 React 应用程序的应用程序。在开发 env 时,我正在使用代理,但我正在部署应用程序,我看到代理不起作用。

我读过关于http-proxy-middleware的文章。它可以是一个解决方案,也可以不起作用?

有什么方法可以在不配置服务器重定向到其他端口的情况下执行此操作?

我需要继续提取到我的 API 服务器。

我在没有配置服务器和 NGINX 的情况下发现的最佳方法是按照以下步骤操作:

  1. 构建前端
  2. 将文件夹移动到后端服务器。
  3. 将该代码放在路由之后:

    if (process.env.NODE_ENV === 'production') {
    app.use(express.static(`${__dirname}/yourFrontFolder/build`));
    app.get('*', (req, res) => {
    res.sendFile(`${__dirname}/yourFrontFolder/build/index.html`);
    })
    ...
    

    并构建后端代码并像前端一样访问后端端口。

部署React 应用程序时,通常不需要代理。要进行部署,通常运行npm run build,这会创建一个构建目录,其中包含部署所需的所有已编译的 JavaScript 和 HTML 文件。然后由Web服务器(例如NGINX)或后端应用程序提供这些服务。

最新更新