生产环境中的Create-React-App代理设置

42

我正在使用create-react-app和express后端。我将后端运行在3001端口,而前端在开发模式下通过3000端口运行。在我的package.json文件中,我有"proxy": "http://localhost:3001",API可以正常工作。

然而,当我使用yarn build,然后运行serve -s build时,API调用根本没有被执行。我不知道为什么它在开发环境下可以工作,在生产环境下无法工作。

如有任何帮助,将不胜感激。

2个回答

28

20
那么在生产中有什么解决方法? - darth vader
2
@darth vader 我建议使用Nginx,因为我相信它是生产环境中的常见做法。 - yaputra jordi
是的,我发现Nginx在提供静态文件方面非常出色,确实能够达到预期的目的。 - darth vader

0
创建一个.env文件,并将后端路径设置为REACT_APP_BACKEND_URL=http://localhost:5500(根据你的端口进行更改), 在调用API的任何地方使用(process.env.REACT_APP_BACKEND_URL/你的URL)。 这样在生产环境中就能完美运行。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接