我正在使用带有快速后端的create-react-app。我有后端在端口3001上运行,并且前端在开发模式下运行通过端口3000。我的package.json中有"proxy": "http://localhost:3001"
,api完美无缺。
然而,当我使用纱线构建,然后运行serve -s build
时,根本就没有进行api调用。我不确定为什么它在生产中不起作用,当它在开发中时。
非常感谢任何帮助。
答案 0 :(得分:7)
代理功能不适合生产。
这可能有助于进一步解释:https://github.com/facebookincubator/create-react-app/issues/1087#issuecomment-262611096
答案 1 :(得分:0)
当我们将应用程序部署到Heroku上时,它在内部托管在AWS上的Heroku网络上运行。当我们部署服务器时,它运行在一些很远的隐藏虚拟机上,该虚拟机也与许多其他服务器同时运行。为了确保将来自浏览器的流量路由到正确的服务器,Heroku使用了代理或负载平衡器。它是确保来自浏览器的流量被路由到其内部网络上正确服务器的代理。
因此您使用的软件包可能由于代理而无法发出请求,因此在您的软件包配置中,您可以添加一个选项
proxy:true