欢迎光临,了解微信小程序开发,就上易用通!

小程序开发填坑《十五》request:fail错误以及真机预览问题

发布:2018-01-25 11:28浏览: 来源:网络 作者:tianshu

问题描述:域名已经备案,我全部都有,也在后台配置了,但是手机预览,还是请求失败, PC端是可以请求数据出来的
 
新版开发者工具增加了https检查功能;可使用此功能直接检查排查ssl协议版本问题:
 
 
小程序开发填坑《十五》request:fail错误以及真机预览问题(图1)
 
 
可能原因:
 
1:后台域名没有配置,域名不支持https
 
2:没有重启工具,域名没有备案,或是备案后不足24小时;备案未生效;
 
小程序开发填坑《十五》request:fail错误以及真机预览问题(图2)
 
3:ssl协议问题:

小程序开发填坑《十五》request:fail错误以及真机预览问题(图3)

微信小程序开发SSL证书配置,解决request fail问题
 
解决方法
 
1、Geotrust先检查下你的站点。把一些常规的问题解决掉,比如中级证书没装,等等问题。
2、微信支持,且只支持ssl_protocols TLSv1.2及以上版本;所以,你需要把SSL V2,SSL V3这些协议都删掉
3、加密方式ssl_ciphers AES128+EECDH:AES128+EDH:!aNULL;
小程序需要TLS 版本支持1.2及以下版本  
小程序开发填坑《十五》request:fail错误以及真机预览问题(图4)
windows系统至少要2008R2以上,才能支持1.0 1.1  1.2
少一个版本不支持都不行
所以03系统想折腾小程序的朋友,自己装R2以上或用linux系统
 
免费的证书可以到startssl.com,或阿里云
建议到阿里云。。。
微信小程序免费SSL证书https、TLS版本问题的解决方案

4:可以参考这个:
问题描述:https接口使用的是Symantec的免费DV证书,目前微信小程序在Android手机中显示正常,可是在iOS中出现异常”发生了SSL错误,无法建立与该服务器的安全连接。“

参考答案:
原因是因为SSL3.0被弃用了,而服务器需要把SSL关闭 启用TLS1.2
https://www.sslshopper.com/article-how-to-disable-ssl-2.0-in-iis-7.html

 
5:证书常见问题:参考https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=10_4
(1)证书受信任的问题
部分国内签发的SSL证书,在Android上不受信任,推荐GeoTrust;
(2)如果页面有动静分离,静态资源使用独立域名的话,也需要为该域名申请证书;
(3)android低版本不支持SNI扩展,受此限制,一台服务器只能部署一个数字证书;

如果有其他可能性,请在本帖内回复以给其他同学参考;如果以上不能解决你的问题,也请回复在底下
 
6:同时测试ios和安卓,假如有一方可以,一方不行,则是证书问题,请选用受认可的证书     
检测地址:https://www.qcloud.com/product/ssl.html#userDefined10  
 
配置指引地址:https://www.qcloud.com/doc/product/400/6973
  • 1.Nginx 证书配置
  • 2.Apache 证书配置
  • 3.Tomcat 证书配置
 
7:手机提示不能建立ssl安全链接可能的解决方法:
没有备案的域名+内网映射出去的https,如果浏览器访问证书都没有问题,手机要是出现不能建立ssl连接,android 提示request fail , 只要把申请的证书手动安装到手机上就可以了

 
8:证书呢, 少了一份证书,配置的证书不是小程序https地址的证书,然后配置了一个中级证书,就ok了
 
9:可以请求数据,真机预览无法请求服务器数据
      检测地址:https://www.myssl.cn/tools/check-server-cert.html
 
小程序开发填坑《十五》request:fail错误以及真机预览问题(图5)
 
小程序开发填坑《十五》request:fail错误以及真机预览问题(图6)
 
10:https端口使用8443时无法访问,需改成443
 
11:小程序网络请求中遇到的坑及解决方法
 
12:
Q:微信小程序在模拟器上https能访问到数据,但是真机上不能建立数据连接。A: a)证书要认证机构颁发的。    b)如果是Android不行看看request的请求method请求类型要用大写,如GET。    c)服务器要支持tls 1.0 1.1 1.2。Q:wx.request发请求,报"ssl hand shake erro"。
A:以下三点要确认没有问题
   (1) tls需要支持1.0 1.1. 1.2版本。
    (2) wx.request 请求参数method的value要大写(例如:GET)。
    (3) 下载最新的微信客户端

 
   如果用的是腾讯云提供的免费证书。腾讯云下载证书zip文件,解压后务必使用nginx目录中的root crt 和 key两个文件。
 
(30.12 KB, 下载次数: 0)




免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。