代理必须为React的package.json中的字符串,create-react-app(2.0)

时间:2018-10-29 13:45:42

标签: reactjs create-react-app

我在When specified, "proxy" in package.json must be a string

处发现了类似的问题

但是该解决方案不适用于我,请帮助我在 create-react-app(2.0)

中设置代理

我在"proxy": "http://localhost:8888"中使用package.json,但有时会出现错误,例如错误从http://localhost:3000http://localhost:8888

如何避免这种错误?

2 个答案:

答案 0 :(得分:0)

这意味着您的代理服务器未运行。请确保它在您的应用程序之前或旁边启动!

如果您的节点服务器正在由Nodemon或类似的工具重新启动,则预计您偶尔会看到这些失败的请求。

答案 1 :(得分:0)

在客户端目录中:

npm i http-proxy-middleware --save

在client / src中创建 setupProxy.js 文件。无需将其导入任何地方。 create-react-app将寻找该目录

将代理添加到此文件。

const proxy=require("http-proxy-middleware")
module.exports=function(app){
    app.use(proxy(['/api','/auth/google'],{target:"http://localhost:8888"}))}

我们要说是做一个代理,如果有人尝试访问我们的react服务器上的/ auth / google或/ api路由(指定您的路由),请自动将请求转发到localhost:8888。