构建后React Web无法正常工作(相关的axios API)

时间:2018-12-20 01:07:24

标签: reactjs build axios

我用 “ webpack”:“ 3.8.1”, “反应”:“ ^ 16.5.2”

启动纱线启动应用程序时

但是在yarn生成并服务-s生成之后,不要调用api。 (但是react-router在工作)

换句话说,它不适用于http请求。构建完成后

但是从头开始,http请求运行良好。

(我在package.json中使用代理。前端是react,后端是spring boot)

1 个答案:

答案 0 :(得分:0)

我怀疑您的问题是这样的。在开发时,如您在问题中所述,您正在package.json中使用代理设置。

具有此代理设置后,webpack开发服务器会将您的请求从客户端代理到服务器。这就是让您在应用程序中将baseurl保留为不发送请求的原因。换句话说,由于有了这个代理,您可以简单地编写/api/endpoint/

但是,当您使用serve模块进行构建和服务时,webpack dev服务器不再是通过浏览器为您的应用程序服务的服务器,这意味着不再有客户端到服务器的代理请求。这意味着您仅向/api/endpoint/发出请求,这意味着实际上没有服务器收到您的请求。

没有实际更改您的反应代码以使用包括请求中的基本URL的完整URL,您实际上需要让服务器负责将build文件夹静态地提供给Web。这样,您的/api/endpoint会指向服务该应用程序的服务器,这也是您的api。