请问 vue 项目打包部署后不能发送请求是怎么回事

2019 年 10 月 13 日
 ak47007

项目未打包前是可以正常运行的,项目打包后通过 nginx 代理了一下 前端代码是这样写的

发送请求文件

var ip = 'http://192.168.40.130/api';
import axios from 'axios';
/**
 * 发送 Post 请求,参数为 Data
 * @param url 接口路径
 * @param data 参数
 * @returns {AxiosPromise}
 */
export function sendPostData(url, data) {
  return axios({
    url: ip + url,
    method: 'POST',
    data: data,
    headers: {
      token: localStorage.getItem("token")
    }
  })
}
//省略一些,但是大致都差不多

登录组件

  import {sendPostJSON} from '../../utils/sendRequest.js'
  
  //省略一些代码
  
  sendPostJSON('/user/login', this.user).then(response => {
                           if (response.data.resultCode == 1) {
                               this.$message({
                                   message: response.data.resultMessage,
                                   type: 'success'
                               });                          
                                   this.$router.push('/main');    
                           } else {
                               this.$message({
                                   message: response.data.resultMessage,
                                   type: 'error'
                               });
                           }
                       })

附上一张图

7712 次点击
所在节点    Vue.js
20 条回复
ak47007
2019 年 10 月 13 日
Immortal
2019 年 10 月 13 日
看看你得 console
ak47007
2019 年 10 月 13 日
@Immortal console 空白 没有东西
rockyou12
2019 年 10 月 13 日
nginx 配错没有? postman 能成功请求不?浏览器的 network 中返回的响应是什么还是没有响应?
然后你的 http 请求,处理异常正确不?返回的异常 catch 中有没有打印或者根本没处理?
ak47007
2019 年 10 月 13 日
@rockyou12 postman 能请求成功, 但是 vue 项目打包部署后都不会触发请求了
xieranmaya
2019 年 10 月 13 日
断点 debug 啊
ak47007
2019 年 10 月 13 日
@xieranmaya 大哥,项目是打包部署后才会有这种问题出现,本地开发的时候是很正常的
xieranmaya
2019 年 10 月 13 日
部署后也能打断点啊,而且看你截图,像是根本就没发请求,你打个断点停在那一行看看先呗
rockyou12
2019 年 10 月 13 日
最简单的就是在请求的各个步骤直接 console 打下 log,再打包部署看下
ak47007
2019 年 10 月 13 日
@xieranmaya 没有发送请求,但是能进去,if 判断也执行了
rockyou12
2019 年 10 月 13 日
还有个很可能的情况是在 axios 的拦截器请求给拦截然后不知道为啥就扔了,特别是你用现成脚手架又不太熟习的话
ak47007
2019 年 10 月 13 日
@rockyou12 可能是我项目配置有问题,我用的是 vue-element-admin 模板,我还是重新构建一个项目把吧
aaahhh123
2019 年 10 月 13 日
防火墙?
PanJiaChen
2019 年 10 月 13 日
@ak47007 mockjs 拦截你的请求了。
Jackliu
2019 年 10 月 13 日
明显报错了 Promise 都不 catch 的么
tonytonychopper
2019 年 10 月 13 日
打断点不就完事了吗
hitaoguo
2019 年 10 月 14 日
不是方法名不对吗?导出 sendPostData,引入的 sendPostJSON
ak47007
2019 年 10 月 14 日
@PanJiaChen 一针见血,大哥牛逼,小弟我对大哥你的景仰犹如滔滔江水,连绵不绝,又如黄河泛滥,一发不可收拾也
argus1
2020 年 3 月 30 日
请问怎么解决的。我的就重定向
@ak47007
ak47007
2020 年 4 月 1 日
@argus1 不好意思,这么久了,有点不记得了,反正我是把 mock 的配置去掉就好了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/608930

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX