create-react-app导致node.js请求无法通过代理

时间:2018-08-30 00:01:49

标签: node.js reactjs request electron create-react-app

我目前正在使用Electron,Create-React-App和Node.js编写应用程序(注意:在electronic中,已禁用webSecurity来发出CORS请求)。 在我的App.js文件中,我试图通过向站点发送请求并检查响应来编写一个模块来测试代理,就像这样

var proxiedRequest=request.defaults({'proxy':"http://username:password@test.test.com:0000"})
await proxiedRequest.get(site, function(error, resp, body){
        console.log(resp.statusCode)
        console.log(resp)
}

现在,我创建了一个单独的test.js文件,用于确保它会引起问题。

const request = require('request-promise')
var proxyUrl = //working proxy here;
var proxiedRequest = request.defaults({'proxy': proxyUrl});
proxiedRequest.get('http://google.com',function(err, resp, body){
    console.log(err)
    console.log(resp.statusCode)
})

我同时使用了正常工作和不正常工作的代理进行了测试,并获得了正确的答复。

我的问题是为什么create-react-app导致请求不通过代理路由?是由于将其托管在https://localhost:3000上,还是实际上是基于电子的问题?对此将有任何帮助

1 个答案:

答案 0 :(得分:0)

如果您的API是通过快递制作的,则必须将本地主机添加到后端的Whitelabel cors中,您可以使用cors lib解决问题cors lib