这几天在用vue写项目,遇到了一个很难受的报错,就是404,也就是我请求时候传递的参数出了毛病。刚开始我还以为是大意了,没有闪,才犯了这种错误。请求类型给加错了或者url拼接出了毛病,但是我反复检查了四五遍后,还是没有找到问题所在,当时就把所有的完成操作之后的响应步骤全给删了,只留下了最基础的一部分语句,想要看看是不是能运行,但是很无奈的是还是报404。请求部分的代码如下:
deleteProject(){
http.delete(`project/deleteMoreProjectByIds?projectIds=${this.ids}`).then(
response =>{
console.log('删除项目成功')
this.$message("删除项目成功")
console.log(response)
this.searchProject(1)
},
error =>{
this.$message("删除项目失败,请检查网络状态",console.log(error))
}
)
},
在我找了半天之后,才在浏览器的控制台里找到原因,在拼接过后的url中的project前多出了这么一串字符%E2%80%8B,我百思不得其解,因为我并没有在代码中写这么一段字符,并且确定自己写的没有毛病,上网查阅一番之后,才知道这是因为我刚开始图省事,于是将上一个请求的代码给复制过来,然后改了改,因为是复制的,vue就给他加上了零宽空白,就是说虽然看着没有距离,不存在空格,但是却有这么一个东西的存在,于是发出请求的时候就变成了这样。遇到这种问题,把请求重新敲一遍就好了。