如何在 CRA v2 中将代理值从 package.json 移动到 setupProxy.js?
How to move a proxy value from package.json to setupProxy.js in CRA v2?
自从最近发布 CRA(Create React App)v2 以来,现在可以将代理设置从 package.json
移动到 setupProxy.js
。我的问题很简单:如果我只想始终使用 http://127.0.0.1:5000
,我的 setupProxy.js
应该是什么样子?我需要这个,因为如果一切正常(到目前为止运气不好),我可以用 dev/prod 环境的 .env
文件中的变量替换它。
但到目前为止我只得到 a 或 b:
a) CORS 错误
b) 我的应用 index.html
作为 http 请求的结果被返回
这是我试过的 setupProxy.js 版本之一的示例:
const proxy = require('http-proxy-middleware');
module.exports = function(app) {
app.use('/', proxy({target: 'http://127.0.0.1:5000', changeOrigin: true}));
app.use('/*', proxy({target: 'http://127.0.0.1:5000', changeOrigin: true}));
app.use(proxy({'/', target: 'http://127.0.0.1:5000', changeOrigin: true}));
app.use(proxy({'/*', target: 'http://127.0.0.1:5000', changeOrigin: true}));
};
我尝试了 app.use
行的各种版本,我只是在这里发布了几个示例。
我通常一次尝试使用一行 app.use
行,但也尝试使用多行。
每次更改文件后,我都会重新启动 React 应用程序。
我也尝试使用 process.env.REACT_APP_BACKEND_BASEURL
而不是 'http://127.0.0.1:5000'
这是我的最终目标。
所以试试
app.use(proxy('/**', { target:'http://127.0.0.1:5000', changeOrigin: true }))
如果我没记错的话,使用 setupProxy.js
只对本地开发有好处,但我也需要它在 live/deployed 服务器上工作,所以我最终没有使用 setupProxy.js
- 我将不同的后端 URL 作为 REACT_APP_BACKEND_BASEURL
变量保存在不同的 .env
文件中(loclahost url 在 .env.development
文件中,远程 url 在 .env.production
文件)并替换了前端 JavaScript 代码中所有出现的地方以使用 process.env.REACT_APP_BACKEND_BASEURL
.
自从最近发布 CRA(Create React App)v2 以来,现在可以将代理设置从 package.json
移动到 setupProxy.js
。我的问题很简单:如果我只想始终使用 http://127.0.0.1:5000
,我的 setupProxy.js
应该是什么样子?我需要这个,因为如果一切正常(到目前为止运气不好),我可以用 dev/prod 环境的 .env
文件中的变量替换它。
但到目前为止我只得到 a 或 b:
a) CORS 错误
b) 我的应用 index.html
作为 http 请求的结果被返回
这是我试过的 setupProxy.js 版本之一的示例:
const proxy = require('http-proxy-middleware');
module.exports = function(app) {
app.use('/', proxy({target: 'http://127.0.0.1:5000', changeOrigin: true}));
app.use('/*', proxy({target: 'http://127.0.0.1:5000', changeOrigin: true}));
app.use(proxy({'/', target: 'http://127.0.0.1:5000', changeOrigin: true}));
app.use(proxy({'/*', target: 'http://127.0.0.1:5000', changeOrigin: true}));
};
我尝试了 app.use
行的各种版本,我只是在这里发布了几个示例。
我通常一次尝试使用一行 app.use
行,但也尝试使用多行。
每次更改文件后,我都会重新启动 React 应用程序。
我也尝试使用 process.env.REACT_APP_BACKEND_BASEURL
而不是 'http://127.0.0.1:5000'
这是我的最终目标。
所以试试
app.use(proxy('/**', { target:'http://127.0.0.1:5000', changeOrigin: true }))
如果我没记错的话,使用 setupProxy.js
只对本地开发有好处,但我也需要它在 live/deployed 服务器上工作,所以我最终没有使用 setupProxy.js
- 我将不同的后端 URL 作为 REACT_APP_BACKEND_BASEURL
变量保存在不同的 .env
文件中(loclahost url 在 .env.development
文件中,远程 url 在 .env.production
文件)并替换了前端 JavaScript 代码中所有出现的地方以使用 process.env.REACT_APP_BACKEND_BASEURL
.