reactjs - 如何在 Create React App Proxy 设置中使用 ENV 变量注入(inject)端口和主机?

标签 reactjs proxy create-react-app

是否可以在 CRA 中以不同于 package.json 的方式设置代理设置?例如使用 ENV 变量?

来自 CRA docs它指出

Use environment variables to inject the right server host and port into your app.

这句话是关于代理还是开发服务器本身?

根据thisthis ,影响代理设置的唯一方法是通过 package.json。

最佳答案

Note: this feature is available with react-scripts@2.0.0 and higher.

您现在可以手动配置代理。您需要先安装http-proxy-middleware

npm install http-proxy-middleware --save

然后创建一个包含以下内容的文件 src/setupProxy.js

const { createProxyMiddleware } = require('http-proxy-middleware');

module.exports = function(app) {
  app.use(
    '/api', // You can pass in an array too eg. ['/api', '/another/path']
    createProxyMiddleware({
      target: process.env.REACT_APP_PROXY_HOST,
      changeOrigin: true,
    })
  );
};

您现在可以在 .env 文件中添加代理,请记住您需要 REACT_APP_ 前缀以便开发服务器获取环境变量。

REACT_APP_PROXY_HOST=http://localhost:5000

引用号:Proxy manually

关于reactjs - 如何在 Create React App Proxy 设置中使用 ENV 变量注入(inject)端口和主机?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46686434/

相关文章:

reactjs - 处理复选框的 onChange

javascript - React意外调用函数

javascript - 了解用于编写 cometd 服务器的 mod_proxy 和 Apache 2

git - 将 socks 代理与 git 一起用于 http 传输

reactjs - 如何在 React 应用程序中为绝对路径导入启用 VS 代码智能感知?

reactjs - 如何为 React 应用程序保存图像

javascript - 如何在 React View 中显示对象数组中的随机值

javascript - Tone.js 无法与 React 一起使用

C SSL 代理 "Sniffer"/解密器

javascript - React 静态网站将除主页之外的每个页面都重定向到 404