- 小程序切后台息屏挂起5分钟后发送请求,服务器接收不到请求?
小程序使用web-view打开测试页面,切后台息屏挂起5分钟后再次打开小程序,点击按钮发送请求,服务器接收不到请求 小程序APPID:wx0c8626ebb206cb1e 测试微信号:danxiabing 日志上传时间:2025-01-10 17:55 下面是测试过程和测试代码: 这是打开测试页面,没有切后台息屏挂起5分钟时,点击按钮正常发送请求接收响应的情况 [图片] 这是打开测试页面,切后台息屏挂起5分钟后,点击按钮发送请求的情况,120秒仍然没有收到服务器响应 [图片] 这是服务器接口C#代码 [HttpGet] public string GetHomeMallList7() { var s = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"); Utilities.WriteLog(s);//服务器日志,正常时有记录,异常是没有记录,能证明是服务器没有接收到请求,而不是客户端没接收到 return s; } 这是测试页面HTML代码 <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> </head> <body style="font-size:40px;"> <a onclick="clickFn(this);this.onclick=''" style="font-size:1em">点击请求服务器</a> <p id="start"></p> <p id="ing"></p> <p id="end"></p> <script> var start = null; var end = null; var num = 0; var timer = null; function clickFn() { //记录客户端发送请求时间 start = new Date(); document.getElementById("start").innerHTML = "客户端发送请求时间:" + DateTimeToString(start); //定时器,证明脚本还活着 var ing = document.getElementById("ing"); timer = setInterval(function () { ing.innerHTML += (num += 10) + "秒过去仍然没有返回,当前时间:" + DateTimeToString(new Date()) + "<br/>"; }, 10000); //发送请求 fetch('/API/CWeb/GetHomeMallList7') .then(response => { //清除定时器 clearInterval(timer); timer = null; //记录客户端接收服务器响应时间 end = new Date(); document.getElementById("end").innerHTML = "客户端接到响应的时间:" + DateTimeToString(end) + ",时间差:" + (end - start) + "毫秒"; if (response.ok) { return response.json(); } throw new Error(); }) .then(data => { //记录服务器返回的时间(服务器接收到客户端请求的时间) data = new Date(data); ing.innerHTML += "服务端接到请求的时间:" + DateTimeToString(data) + ",时间差:" + (data - start) + "毫秒<br>备注:客户端和服务端有时间差,测试前需确认时间差<br> 经测试,测试手机和服务器时间差为2100毫秒左右"; }) .catch(error => { document.getElementById("end").innerHTML = "失败返回"; }); } //时间转字符串 function DateTimeToString(time) { const year = time.getFullYear(); const month = (time.getMonth() + 1).toString().padStart(2, '0'); const day = time.getDate().toString().padStart(2, '0'); const hours = time.getHours().toString().padStart(2, '0'); const minutes = time.getMinutes().toString().padStart(2, '0'); const seconds = time.getSeconds().toString().padStart(2, '0'); const milliseconds = time.getMilliseconds().toString().padStart(3, '0'); return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}.${milliseconds}`; } </script> </body> </html>
01-10 - 小程序webview静态页面挂起5分钟后热启动点击a标签跳转另一个静态页失败?
小程序web-view打开页面index02.html,切后台,息屏,挂起5分钟后热启动,概率出现点击链接后需要5-110秒(甚至更长时间)才能跳转过去的情况。 如果把for循环里面的代码改成ajax或fetch请求服务器,跳转缓慢的现象更明显,请求的响应数据越多现象越明显。 点击链接后等待跳转的时间内,如果把网络关闭会显示“无法打开页面”提示,点击屏幕重新加载会显示跳转后的index01.html。 index01.html <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> </head> <body> <a href="/index02.html">链接</a> <div> <p>0</p> <p>1</p> <p>2</p> <p>3</p> <p>4</p> <p>5</p> <p>6</p> <p>7</p> <p>8</p> <p>9</p> </div> </body> </html> index02.html <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> </head> <body> <a href="/index01.html">链接</a> <div> <p>0</p> <img src="0.jpg" /> <p>1</p> <img src="1.jpg" /> <p>2</p> <img src="2.jpg" /> <p>3</p> <img src="3.jpg" /> <p>4</p> <img src="4.jpg" /> <p>5</p> <img src="5.jpg" /> <p>6</p> <img src="6.jpg" /> <p>7</p> <img src="7.jpg" /> <p>8</p> <img src="8.jpg" /> <p>9</p> <img src="9.jpg" /> <script> for (var i of document.getElementsByTagName("p")) i.innerHTML += "-脚本完成"; </script> </div> </body> </html>
2024-12-23 - 小程序webview给a标签添加target="_blank"后,在电脑版微信小程序点击无反应?
给a标签使用target="_blank"后,在电脑版微信小程序点击a标签无反应,电脑版微信内置浏览器点击也没有反应。 在手机版的微信小程序和微信内置浏览器点击能正常打开。 其他浏览器点击也能正常打开。
2024-12-06 - 微信浏览器和小程序挂起20-30分钟后热启动需要1-2分钟?
微信浏览器和小程序(使用wbe-view)访问页面,息屏挂起20-30分钟,热启动后滚动屏幕和点击跳转链接都没有反应,需要等待1-2分钟之后才能恢复正常,这有可能是哪些原因造成的?
2024-06-20 - 获取AccessToken的接口时好时坏?
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1} 服务器访问上面的链接获取AccessToken时好时坏,报错提示为“由于远程方已关闭传输流,身份验证失败”。 一开始是发现微信分享时好时坏,怀疑是AccessToken的过期问题,然后写了个接口专门更新AccessToken以此排除是否AccessToken过期导致的,但后来发现连更新AccessToken的接口都会报错。 找不到规律,就是时好时坏,但坏的时候微信登录是正常的。
2024-05-08 - 获取AccessToken的接口时好时坏?
一开始的时候是发现微信分享时好时坏(没有图标),然后认为是AccessToken过期导致的。 但去更新AccessToken后发现,服务器访问https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}报错“由于远程方已关闭传输流,身份验证失败”。 appid和secret都是固定的,不会变,服务器也没操作什么,但就是时好时坏。 坏的时候微信登录没问题。
2024-04-28 - 电脑端小程序分享显示红色感叹号,手机端正常
电脑端小程序分享显示红色感叹号,手机端正常 微信号:danxiabing AppID:wx637544a82c528712 时间:2024年4月1日11:02:36 链接:任意页面链接 截图:[图片]
2024-04-01 - 小程序息屏挂起20分钟,无法跳转链接,重新进入小程序白屏?
打开小程序可以正常访问,息屏等待20分钟,页面可以滚动,点击链接无反应,页面无法滚动,点击重新进入小程序显示白屏,清除微信进程后重新打开小程序可以正常访问。 偶发现象,有时候息屏等待10分钟触发有时候20分钟触发。 有时候点击链接后等待一段时间可以自动跳转,之后访问正常。 有时候点击链接后显示超时,触摸刷新后访问正常。 有时候是直接卡死无法滚动,需要清除微信进程才能正常访问。 小程序是内嵌H5的。 已上传微信日志,麻烦帮忙看一下,谢谢。 微信号:wxid_bcw0yomr7y6c22 时间:2024年3月20日16:07左右
2024-03-20