微信小程序request:fail报错(包括不执行fail回调问题)

微信小程序request:fail报错(包括不执行fail回调的问题)

  • 1. 不执行fail回调的问题
  • 2. request:fail报错原因
    • 2.1 小程序未配置域名导致的错误
    • 2.2 微信小程序使用的服务器环境不支持TLS1.2
    • 2.3 使用的SSL证书不信任
    • 2.4 SSL证书证书链缺乏
    • 2.5 域名未备案,或者备案了未超过24小时。
    • 2.6 苹果部分机型可用,部分机型报错:或安卓机型报错等
    • 2.7 微信小程序与第三方服务器通讯的域名必要条件

1. 不执行fail回调的问题

首先,很多的人可能认为,success就是我成功请求到数据了,也就是当请求返回的状态码是2XX,而返回4XX,5XX肯定是出错了,出错了之后就执行fail回调函数。

但是事实上并不是这样 的,其实只要你的wx.request成功发出了请求,无论返回什么http状态码,都会走success。

那有的人就会问,这样success和fail有什么意义? 答案是这样的设定是非常合理的,当我们遇到断网,域名解析有问题,或者尤其是我们去调用restful api时,可能会在url格式,参数类型上出些问题,这些情况下才会调用到fail。

反之4xx、5xx 等 response的异常状态不会进入fail回调,所以我们需要在success回调中检查statusCode,根据http状态码的不同去做相应的逻辑判断。

2. request:fail报错原因

2.1 小程序未配置域名导致的错误

登陆小程序后台(https://mp.weixin.qq.com)

将小程序访问网址域名填写到小程序后台,设置—开发设置—服务器域名,如下:
在这里插入图片描述

填写完成并保存,再次打开小程序就可以啦

2.2 微信小程序使用的服务器环境不支持TLS1.2

在这里插入图片描述
Windows系统至少要2008R2以上,才能支持,但2008操作系统需要手动工具调整 ,其它的服务器环境调整方法:苹果ATS特性服务器配置指南_常见问题

2.3 使用的SSL证书不信任

可以苹果ATS检测确定是否支持。

结果这样的说明证书正常,如果检测出不信任或者证书问题,请重新申请:https://gworg.taobao.com/
在这里插入图片描述

2.4 SSL证书证书链缺乏

如果SSL证书缺乏中间证书会导致同样的错误,这种情况下需要去补充证书链:
下载DigiCert和GeoTrust中间证书

2.5 域名未备案,或者备案了未超过24小时。

微信小程序的域名必须要备案,并且24小时后去公众号小程序配置域名才生效。

如果域名启用端口的建议改成常规443端口使用。

2.6 苹果部分机型可用,部分机型报错:或安卓机型报错等

在这里插入图片描述

可能是证书不受信任,在此查看证书信任列表:苹果支持的证书列表:
iOS 中可用的受信任根证书列表 - Apple 支持 (中国)

证书常见问题参考:https://blog.csdn.net/Gworgcom/article/details/121349211

2.7 微信小程序与第三方服务器通讯的域名必要条件

1、一个已备案的域名,不是localhost、也不是127.0.0.1,域名不能加端口

2、加ssl证书,也就是https://xxx

3、HTTPS 服务器的 TLS 版本支持1.2及以下版本,一般就是1.0、1.1、1.2要同时支持这三个版本,一个也不能少,要不然就会出现下面这种情况
在这里插入图片描述
4、微信小程序后台加上合法域名设置(一个月内改的次数是有限的,且行且珍惜)如下图

在这里插入图片描述
以上条件,必需全满足,要不然你手机预览的时候就会发现通讯不了文章来源地址https://uudwc.com/A/R3m3

原文地址:https://blog.csdn.net/qq_58648235/article/details/127459432

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年06月15日 00:59
微信小程序删除list指定列表项
下一篇 2023年06月15日 00:59