package.json 配置 proxy 代理报错, 报错信息如下:
来源:2-2 Mock数据的使用

宝慕林6688393
2019-01-26
When specified, "proxy" in package.json must be a string.
Instead, the type of "proxy" was "object".
Either remove "proxy" from package.json, or make it a string.
3回答
-
你好,这个是create-react-app版本的问题。课程录制时,create-react-app的版本是1.x,支持proxy值设置为object类型。当前2.x已经发布,但不支持object类型的proxy值。
解决这个问题有3种方法:
方法1:将package.json中的proxy配置改为: "proxy": "http://localhost:5000"。
方法2:
1. 安装 http-proxy-middleware,在项目根路径下执行: npm install http-proxy-middleware
2. 在src文件夹根目录下,创建 setupProxy.js 文件,文件内容为:
const proxy = require('http-proxy-middleware'); module.exports = function(app) { app.use(proxy('/api', { target: 'http://localhost:5000/' })); };
3. 删除package.json中的原有proxy配置。
方法3: 将package.json中的依赖react-scripts的版本改为1.x,例如课程录制时使用的是1.1.4。
322019-03-06 -
郭纯
2019-01-26
因为create-react-app 版本的问题 现在的proxy的值只能是一个字符窜。
例如: "proxy": "http://localhost:5000"
但是有两种办法解决
1:降低create-react-app 版本
2:替代方案
npm install http-proxy-middleware --save 安装http-proxy-middleware
在src/目录创建 setupProxy.js 文件
文件内容
const proxy = require('http-proxy-middleware');
module.exports = function(app) {
app.use(proxy('/api', { target: 'http://localhost:5000/' }));
};
50 -
ChelFannie
2020-12-29
When specified, "proxy" in package.json must be a string.
Instead, the type of "proxy" was "object".
Either remove "proxy" from package.json, or make it a string.
看过老师之前的回答了,不管是哪个方法都无效,希望老师能解答一下,谢谢!00
相似问题