通常说, ajax 请求错误有两种, 一种是网络问题或者代码问题所造成的 400, 500错误等, 另外一种是请求参数后端通不过验证, 由后端抛出的错误
第二种根据不同的后端框架或者程序猿又可以分成两种, 一种是直接返回 json, 用一个 特别的 code 来区别正常请求返回的数据, 如:
{
code: -404,
message: '这是错误信息',
data: '',
}
还有一种就是抛出 http 404 之类的, 然后把错误原因放在 header 里.
在组件写调用 ajax时, 通常都是这么写(这里以 axios 为例):
import axios from 'axios'
axios.get('/user?ID=12345')
.then(function (response) {
if (response.data.code === 200) {
console.log(response.data)
} else {
// 由后端抛出的错误
alert(response.data.message)
}
}).catch(function (error) {
// 由网络或者服务器抛出的错误
alert(error.toString())
})