Vue CLI 3.0+ 项目打包上线后,无法发送 Ajax 请求

我在项目中使用的 Ajax 请求库是 axios,并且进行了一定的封装:让所有请求头携带 token,请求超时错误处理,网络异常错误处理401, 403, 404, 410, 500, 502, 503, 504 等错误码的处理 等等。

由于,处理了网络异常错误,所以当发生网络异常时,请求是不会被发送的(在开发者工具的 network 中也看不到)。

查找资料后找到原因:除了断网会引起网络异常错误之外,接口地址有问题(不是 404),也会引起这个错误。

解决方法:

  1. 将接口地址改为 IP + 端口
  2. 由于上线后,打包后的文件放在 tomcat 的 webapp 目录下,所以接口不用指定地址和端口,直接这样写:
axios.get('/getUserInfo').then((res) => {
     });

将地址改为 127.0.0.1 或者 localhost 是不行的,访问的是本地资源。


参考资料:

https://blog.csdn.net/Honnyee/article/details/80691391

你可能感兴趣的:(JavaScript)