九涯
九涯
  • 发布:2020-09-04 10:43
  • 更新:2024-04-16 10:14
  • 阅读:30238

uniapp使用uni.request请求报错{"errMsg":"request:fail abort statusCode:-1"}的解决办法

分类:uni-app

问题呈现

在uniapp中,使用uni.request()向服务端接口发起请求后,返回值为:{"errMsg":"request:fail abort statusCode:-1"},因此,导致了后面的业务代码报错

前提

检查了uni.request()根据服务端接口需要的配置(如:url、data、header、method等)都没有问题

问题出现的可能原因

在以上前提下还出现这种问题,最有可能的原因:手机没有连网,或者看着连上了网但实际网络不可用,可以在手机浏览器中随便输入点文字搜一下测试看看,能不能搜到新内容。

仔细查看,这个{"errMsg":"request:fail abort statusCode:-1"}返回值,其实并不是服务端返回来的,因为请求都完全没有到服务端

解决办法

在执行uni.request()向服务端请求前,使用uni.getNetworkType()和uni.onNetworkStatusChange()对网络进行监听,如果监听到当前设备是处于无网络的状态时,就不执行uni.request()请求,而是弹出一个弹框或者消息提示,提醒用户:“当前设备断网了,请检查网络后重试”

注:以上是根据我本人实际遇到这个问题后的解决办法,也是在这个坑里吃了不少苦,分享出来,希望给大家提供参考,若解决了你的问题,不要钱,请点一下赞!因为分享经验需要去组织语言、编辑文字,这个过程其实是需要花精力花时间的,因此,创作不易,分享不易!

1 关注 分享
DCloud_UNI_OttoJi

要回复文章请先登录注册

狗尾草joss

狗尾草joss

回复 4***@qq.com :
检查一下你的app网络权限
2020-09-15 13:30
4***@qq.com

4***@qq.com

关键是我用4G网络就一直报这个错,用了wifi就没有,我确信我的4g网络是没问题的
2020-09-15 12:47