作太小程序的朋友们应该都知道,小程序中调用ajax的命令是wx.request,其有两个回调,一个是success,一个是fail,
那么什么状况下会走success,什么状况下会走fail呢?ajax
大多数人可能认为,success就是我成功请求到数据了,也就是请求返回的状态码是2XX,而返回4XX,5XX确定是出错了,出错了就走fail呗。小程序
那可就错啦,其实只要你的wx.request成功发出了请求,不管返回什么http状态码,都会走success。api
说到这不少同窗会问这也太不合理了吧,这样success和fail有什么意义? 答案是这样的设定是很是合理的,当咱们遇到断网,域名解析有问题,或者尤为是咱们去调用restful api时,可能会在url格式,参数类型上出些问题,这些状况下才会调用到fail。restful
反之4xx、5xx 等 response的异常状态不会进入fail回调,咱们须要在success回调中检查statusCode,根据http状态码的不一样去作相应的逻辑判断。url