小程序报错:request:fail错误(含https解决方案)(真机预览问题)

问题描述:域名已经备案,我全部都有,也在后台配置了,但是手机预览,还是请求失败, PC端是可以请求数据出来的 
新版开发者工具增加了https检查功能;可使用此功能直接本地避开ssl协议版本检查,但是此功能对(非调试模式)真机无效!(如需发布仍需排除所有问题才可正常使用)详情请参考:跳坑《七十九》调试模式与非调试模式,不校验域名

<ignore_js_op>

可能原因:0:后台域名没有配置配置完毕请点击刷新按钮:
<ignore_js_op> 
0.1:域名不支持https
1:没有重启工具;
2:域名没有备案,或是备案后不足24小时;备案未生效;感谢@小树提供的案例<ignore_js_op> 
3:ssl协议有问题:具体请参考本文:
微信小程序开发SSL证书配置,解决request fail问题 <ignore_js_op>

解决方法
1、Geotrust先检查下你的站点。把一些常规的问题解决掉,比如中级证书没装,等等问题。
2、微信支持,且只支持ssl_protocols TLSv1.2及以上版本;所以,你需要把SSL V2,SSL V3这些协议都删掉
3、加密方式ssl_ciphers AES128+EECDH:AES128+EDH:!aNULL;

配置tls1.2方法可参考链接:微信小程序开发时服务器如何支持tls1.2?

@奔跑的拖鞋同学分享
小程序需要TLS 版本支持1.2及以下版本<ignore_js_op>
windows系统至少要2008R2以上,才能支持1.0 1.1  1.2 
少一个版本不支持都不行
所以03系统想折腾小程序的朋友,自己装R2以上或用linux系统

免费的证书可以到阿里云,腾讯云
建议到阿里云,。。 
微信小程序免费SSL证书https、TLS版本问题的解决方案感谢@dongyado 补充:给大家提个醒 startcom 下面的dv ssl 证书, 亲测 在ios10 小程序中无法请求成功 在ios9 下可以请求成功,然后换成鹅厂的免费证书,全部都没有问题了。这不是广告 折腾了两天发现ios10 可能已经对startcom 有处罚了。

4:参考这个链接:微信小程序:nginx 设置HTTPS

5:证书常见问题:参考https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=10_4

(1)证书受信任的问题
部分国内签发的SSL证书,在Android上不受信任,推荐GeoTrust;
(2)如果页面有动静分离,静态资源使用独立域名的话,也需要为该域名申请证书;
(3)android低版本不支持SNI扩展,受此限制,一台服务器只能部署一个数字证书;

当证书不受信任时,将会报如下错误:

安卓端,是ssl失败,苹果端是不受信任

如果有其他可能性,请在本帖内回复以给其他同学参考;如果以上不能解决你的问题,也请回复在底下

6:同时测试ios和安卓,假如有一方可以,一方不行,则是证书问题,请选用受认可的证书     
检测地址:https://www.qcloud.com/product/ssl.html#userDefined10<ignore_js_op>

配置指引地址:https://www.qcloud.com/doc/product/400/6973

7:配置中间证书请参考:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=4897

8:@”沉沦自己“的案例:证书是赛门铁克的, 少了一份证书,配置的证书不是小程序https地址的证书,然后配置了一个中级证书,就ok了

9:可以请求数据,真机预览无法请求服务器数据:感谢@Zero 同学提供的此解决方案
      检测地址:https://www.myssl.cn/tools/check-server-cert.html
<ignore_js_op> 
<ignore_js_op>

10:https端口使用8443时无法访问,需改成443

11:小程序网络请求中遇到的坑及解决方法

12:专业插眼遇到的问题:安卓真机预览request:fail(后台spring boot)(配置中间证书教程)

13:

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两个文件。

14:问题描述:每次执行wx.request是返回的都是fail?1、https:// + url 服务器已配置

2、https:// + url 访问能正常访问并返回json数据

3、https配置用的是IIS,SSL用的是自签名证书

每次执行wx.request是返回的都是fail,有哪位大神知道问题可能出在哪吗?

转自:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=648

该问题已解决,现在和大家分享一下。

运行环境:Windows 2008 R2 + IIS7.5

经分析,问题原因是:
1、wx.request要求SSL版本使用的是TLS1.2,而我之前的操作系统SSL版本为SSL2.0;
2、小程序开发用的https不支持SSL自签名证书,需要在网上申请SSL证书。

解决办法如下:
1、升级SSL版本至TLS1.2。
我的运行环境为Win2008R2,可参考此网上教程将SSL版本升级至TLS1.2

http://www.wxapp-union.com/forum.php?mod=viewthread&tid=4820

2、网上申请免费的DV SSL证书并在IIS导入服务器证书。
现在很多网站都支持免费SSL证书申请,有效期为一年。我同时在阿里云和腾讯云上都有申请,个人感觉在腾讯云上申请的SSL更方便快捷,记得当时在腾讯云上申请时都有相关提示,不懂可以很快点开操作说明文档。在配置好域名解析后10分钟内就提示通过SSL证书申请,刷新页面后就可以下载证书了。
将下载好的证书导入IIS里的服务器证书,并重新配置https后,重启生效。
问题得到解决。

15:案例:

wx.request 错误提示 request:fail invalid url

我已经配置好了 https ,浏览器中可以正常访问

在小程序后台也设置好了服务器域名

但在小程序代码中使用 wx.request 请求 url 时显示错误信息:

request:fail invalid url

请问大家有遇到过这个问题的吗?

问题原因:

传入的 URL 不合法

最终解决:

最后发现,我的这个问题不是因为后台配置,也不是SSL证书的问题,是调用url时的引号写法问题

之前的写法:

wx.request({
      url: ‘https://www.xxx.com/test.php‘, 
      ...
    })

这样就报错:invalid url

后来改成:

...

url: `https://www.xxx.com/test.php`,

...

不使用单引号,改为了 ` (与 ~ 同键), 这样就好了

url 字符串中并没有使用变量,不明白为什么单引号不行,而需要使用 `

16:苹果部分机型可用,部分机型报错:或安卓机型报错等
可能是证书不受信任,在此查看证书信任列表:苹果支持的证书列表:https://support.apple.com/zh-cn/HT204132

17:新增案例:
开发工具wx.request 接口可以用,预览用手机微信访问时无法请求数据我们在开发工具上 可以进行系统的登录,也就是可以请求服务端的接口,但在手机上预览的时候服务端收不到请求的信息,分配手机上调用wx.request这个接口没有反应,通过手机上的调试  也是执行 wx.request 没有反应,执行不下去,如下图。 请求帮忙 怎么回事,我们的TLS是1.2版本的。 
<ignore_js_op><ignore_js_op>

确实是 TLS1.2的问题,我们配置了1.2但访问的时候是1.0的,后来查是JDK的原因,我用的是JDK 1.6.31 ,后来 把JDK改成了 1.7的主可以了

更多内容可以参考:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=1909
相关帖子:请查看https相关系列:http://www.wxapp-union.com/portal.php?mod=list&catid=17

更多内容,请在本站搜索https搜索帖子及文章进行查看:http://www.wxapp-union.com/search.php
<ignore_js_op> 
如果你是因查询如下问题而进入的这个帖子

小程序接收json数据,安卓无法接收数据,苹果完全没问题?

请参考此帖:http://www.wxapp-union.com/forum.php?mod=viewthread&tid=1522

http://www.wxapp-union.com/forum.php?mod=viewthread&tid=1909

原文地址:https://www.cnblogs.com/kenshinobiy/p/9108480.html

时间: 2024-08-01 10:43:47

小程序报错:request:fail错误(含https解决方案)(真机预览问题)的相关文章

小程序报错request:fail ssl hand shake error 安卓请求不到返回苹果手机可以

小程序服务器配置wx.request请求,苹果手机可以接收到返回,安卓手机接收不到返回信息,有时候是 报错request:fail ssl hand shake error. 解决步骤: 1.先检查服务器证书是否配置好,我的服务器是apache的,证书是腾讯云免费申请的,把下载到的三个证书放到服务器上面,修改配置文件(https.conf?),由于我使用的是宝塔的面板,所以也不清楚他是配置的哪个文件: 配置如下: SSLCertificateFile /www/wwwroot/xcxcert/2

winserver2003环境发布ASP程序报错(HTTP 错误 403.1 - 禁止访问:执行访问被拒绝)

问题: 在Windows Server 2003 + IIS6.0上布署.Net 2.0网站时发生如下错误: 该页无法显示 您试图从目录中执行 CGI.ISAPI 或其他可执行程序,但该目录不允许执行程序. -------------------------------------------------------------------------------- 请尝试以下操作: 如果您认为该目录应该允许执行访问权限,请与网站管理员联系. HTTP 错误 403.1 - 禁止访问:执行访问被

原创:跳坑指南——微信小程序真机预览跟本地不同的问题

微信小程序中出现最多的一个问题,就是真机跟本地不同:我简单列举一些我发现的原因,给大家参考,大家也可以把自己发现的东西回复给我,给我参考: 本地看不到数据,就先让本地能看到数据,再看本帖.... 1:本地可以看到数据,ios不行,安卓可以:可能是tsl版本问题不支持1.2导致,部分安卓可以允许tsl低于1.2而正常显示,而苹果不行: 解决方法:参考此帖排查问题并修复:request:fail错误(含https解决方案)(真机预览问题 可能是证书不受信任 2:本地可以看到数据,ios可以,安卓不行

【小程序报错】 TLS 版本必须大于等于 1.2

服务器是windows 2008 server 环境是IIS7SSL是申请用的阿里免费.微信小程序发现wx.request,调试报错: 小程序要求的 TLS 版本必须大于等于 1.2 直接说解决办法吧:在PowerShell中运行一下代码(复制粘贴即可),PowerShell窗口打开方式可以用下面任意一种1:开始->运行->输入 PowerShell 2:开始->所有程序->附件 找到 # Enables TLS 1.2 on windows Server 2008 R2 and

微信小程序报错:id 属性值格式错误。如不能以数字开头。

出现这个报错时,相信很多人都排除过自己标签上写的id是否有以数字命名的,如果你排除了发现并没有,但是这个报错还是存在,那么我接下来分享的这个情况或者能报到你 这次我也遇到这个报错,最终找出问题所在 这里的scroll-into-view属性是scroll-view组件中的,这里涉及到锚点知识,根据下面文档的提示,toView值是不能以数字开头的,所以当时顺其自然就想到用‘#’符号作为初始值,没想到还是出现问题,虽然这个问题不影响程序运行,但是说明这里不仅不能使用数字开头,也不能使用符号(试过其他

小程序电脑调试没有问题,真机预览报错fail hand shake error

今天在做小程序的过程中使用HTTPS请求数据时,遇到安卓机型无法获取到数据,通过一系列的排查,发现是因为ssl证书的问题,后来通过https://www.myssl.cn/tools/check-server-cert.html检查发现缺少中间证书: 打开网址 : https://www.myssl.cn/tools/downloadchain.html 获取中间证书 点击下载中间证书文件 打开conf 地址一般为:      /www/server/panel/vhost/apache/***

小程序报错:出现脚本错误或者未正确调用 Page()的解决办法

场景是两个人共同开发小程序,我使用的是pc端,另一个同事是用的mac端,我这边能够正常运行项目,代码提交到git,同事check下来发现运行报错: 出现脚本错误或者未正确调用 Page(); 如图 一脸懵逼,在这里也吐槽一下开发工具,报这种错误你让我去哪找问题,感觉就是老虎吃天无从下口,上网搜索全是让我在每个index.js下面加上Page({})这个字段,但是现在微信开发工具已经会默认在每个页面的js文件里面加上Page({})的好吗,几番搜索无果后遂放弃挣扎, 也不知道是不是平时有烧高香的习

微信公众号开发上传图文素材带有卡片小程序报错:errcode=45166,errmsg = invalid content hint

微信公众号开发自从支持允许在群发图文中插入小程序,方便了小程序的运营及推广.最近在三方服务开发中,要支持图文素材插入小程序遇到了一个很是棘手的问题.官方给出的插入小程序的示例支持文字.图片.卡片.如下面api文档介绍: 按照示例插入文字小程序和图片小程序都没问题,但是插入卡片小程序却是一直报错errcode=45166,errmsg = invalid content hint.检查了好长时间,才发现卡片小程序的示例中data-progarm-imageurl参数写错了,应该是data-mini

uni-app真机调试报错request:fail abort解决方法

Android端真机调试访问本地接口数据时报错:request:fail abort 报错代码 onLoad: function(e) { uni.request({ url: 'http://localhost:8088/api/Gift', method: 'GET', data: {}, success: (res) => { this.GiftInfo = res.data; }, fail: (fa) => { console.log(fa); } }) } 本地接口访问没有问题: