小七ing
小七ing
  • 发布:2021-12-02 09:03
  • 更新:2023-03-08 18:44
  • 阅读:2514

【报Bug】好几个客户反馈,uniapp用久了,uni.request会请求不了,无反应,重启app也无效,必须重新安装才可以,安卓苹果都会

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 7

HBuilderX类型: 正式

HBuilderX版本号: 3.2.12

手机系统: Android

手机系统版本号: Android 12

手机厂商: 华为

手机机型: 华为p20 pro

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

App下载地址或H5⽹址: https://app.kq36.com

操作步骤:

uniapp用久了,uni.request会请求不了,无反应,重启app也无效,必须重新安装才可以,安卓苹果都会

预期结果:

uniapp用久了,uni.request可以正常请求

实际结果:

uniapp用久了,uni.request会请求不了,无反应,重启app也无效,必须重新安装才可以,安卓苹果都会

bug描述:

uniapp用久了,uni.request会请求不了,无反应,重启app也无效,必须重新安装才可以,安卓苹果都会

2021-12-02 09:03 负责人:无 分享
已邀请:
小枫叶

小枫叶 - 外包接单加v:wlmk1234567 注明来意

具体是什么应用呢,能否吧apk发一个出来测试一下

  • 小七ing (作者)

    https://app.kq36.com

    2021-12-02 09:15

  • 小七ing (作者)

    回复 小七ing: 下载地址

    2021-12-02 09:16

  • 小枫叶

    回复 小七ing: 测试了一下,没有问题,

    2021-12-02 09:23

  • 小枫叶

    这个现象可能原因是比较多的,第一,首先得排查是不是因为网络后台的接口问题,第二,检查自己的写法有没有问题,第三,过段时间我再看看能不能复现

    2021-12-02 09:25

  • 小七ing (作者)

    回复 小枫叶: 但是卸载重装就可以。。。

    2021-12-02 09:26

  • 小七ing (作者)

    回复 小枫叶: 一般不好复现,但是肯定还是存在问题,或者是否有解决方案,清缓存提示重装等

    2021-12-02 09:30

  • 小枫叶

    回复 小七ing: 我在想,既然一开始没有问题,那么后面为何会有问题呢,是否通过网络请求向本地缓存存储了呢?

    2021-12-02 09:33

  • 小七ing (作者)

    回复 小枫叶: 肯定会缓存,不然怎么登陆账号,会影响请求网络?

    2021-12-02 09:46

  • 小七ing (作者)

    回复 小枫叶: 是不是app升级替换,导致旧的没删干净,影响

    2021-12-02 09:46

  • 小七ing (作者)

    回复 小枫叶: 客户手机:华为P20 Pro6GB+128GB全网通版

    2021-12-02 09:47

雨夜敬清秋

雨夜敬清秋

就我已经开发了2个app来看,@DCloud_Android_ST 说的没有错,应该是你内部逻辑的问题,我开发的2个app已经发布将近2年,用户量也还可以,从未出现过你描述的问题,另外,从你的后续的描述来看,很大可能是根本就没有触发到 request,所以你要再自行多测试,应该是其他的问题导致的,把真正的问题找出来,你可以的

  • 小七ing (作者)

    应该是onshow没有触发,还不知道怎么导致的,在排查看看

    2021-12-03 09:09

  • 小枫叶

    回复 小七ing: request不应该写在onload里面吗

    2021-12-03 09:34

  • 小七ing (作者)

    回复 小枫叶: onshow时候列表也要更新,后台有改一下东西,需要定制

    2021-12-03 11:16

  • 小枫叶

    回复 小七ing: ok

    2021-12-03 11:47

小七ing

小七ing (作者) - 大家好

顶顶顶顶顶顶顶

DCloud_Android_ST

DCloud_Android_ST

通过你的描述应该是你内部逻辑导致的。涉及到卸载的问题 基本上都是自身逻辑导致。这个我们无法判定问题原因需要你自己行排查

  • 小七ing (作者)

    不要着急甩锅,我是实事求是把实际发出来,uni.request(OBJECT)意思是这个方法逻辑问题?很多地方都用到都没发访问。。。

    2021-12-02 14:18

  • DCloud_Android_ST

    回复 小七ing: 不是甩锅。request自身请求只会涉及到当前设备网络环境。不会涉及到必须卸载重新安装才能再次request。所以还是需要你自行去验证测试才行。我们无法验证

    2021-12-02 15:12

  • 小七ing (作者)

    回复 DCloud_Android_ST: 是个别客户反馈过来,我们是没办法复现

    2021-12-02 15:25

  • DCloud_Android_ST

    回复 小七ing: 你描述问题指向request,而我们排查了request认为不会出现类似情况。可能是其他逻辑导致的。还是需要具体信息才能判定这事对吧。request有失败回调 提供demo让用户复现看看有没有错误信息。

    2021-12-02 15:44

  • 小七ing (作者)

    回复 DCloud_Android_ST: 没有信息回调,感觉没调用request一样,有回调至少转圈会关掉

    2021-12-02 15:55

  • DCloud_Android_ST

    回复 小七ing: 那你能确认调用了request吗

    2021-12-02 16:00

  • 小七ing (作者)

    回复 DCloud_Android_ST: 很多地方调用了,uni.request方法,没有一个可以的

    2021-12-02 16:24

  • DCloud_Android_ST

    回复 小七ing: 所以只能复现问题然后看下了 现在你说都调用了但并没有真实的数据来支持

    2021-12-02 16:27

  • 小七ing (作者)

    回复 DCloud_Android_ST: https://app.kq36.com apk地址

    2021-12-02 17:13

  • 小七ing (作者)

    回复 DCloud_Android_ST: 好像是没有进入onshow的方法导致。。。就是onshow方法不触发

    2021-12-02 17:47

  • 5***@qq.com

    回复 DCloud_Android_ST: https://ask.dcloud.net.cn/m/question/136563 早就发现 官方的app也这个问题 就是没人理

    2022-01-01 10:01

  • 5***@qq.com

    就知道甩锅 https://ask.dcloud.net.cn/m/question/136563 早就发现 官方的app也这个问题 就是没人理

    2022-01-01 10:02

小七ing

小七ing (作者) - 大家好

顶顶顶顶顶顶顶顶顶顶顶顶

取舍

取舍 - 我们都如流星短暂 但谁能像它闪耀

可能是 微信bug 我感觉 , 打开小程序是白屏, 删掉小程序后, 重新打开一直在转圈 加载不出, 体验版 打开调试, 点击重新打开当前页面功能无效, 微信他自己的功能都没用, 而且我再 main.js 第一行 console.log 都打不出来,我觉的是微信bug

  • 小七ing (作者)

    客户app复现好几次,我手机没办法复现

    2021-12-23 13:53

  • 取舍

    回复 小七ing: 我今天遇到小程序删掉 重进都没用

    2021-12-23 13:56

  • 取舍

    所以 我觉得可能不是uni问题,可能是微信的bug, 微信社区里有人原生小程序开发的也出现过这种问题

    2021-12-23 13:59

  • 取舍

    回复 小七ing: 我用vconsole使用全屏切换半屏功能,它显示是页面不存在

    2021-12-23 14:06

  • 取舍

    回复 小七ing: 只能重装微信 才能进去, 醉了

    2021-12-23 14:09

  • 取舍

    回复 取舍: 之前使用另一个人的微信登录上传了代码, 原来后来调试的结果并不是正确的, 只能在下次复现的时候在调试看看了

    2021-12-23 14:23

DCMarvel

DCMarvel

这是你的网站测试


差不多全线超时了,怎么不考虑考虑服务器问题 ,都是直连47.110.43.47要不上个CDN试试???
你这个偶尔性大概率是服务器线路满载了吧,服务器带宽多少啊,实在不行找个运维吧

  • 小七ing (作者)

    客户访问webview组件是可以网页访问的,就接口类不行,我们网址是3g.kq36.com

    2021-12-29 09:46

  • 小七ing (作者)

    带宽130

    2021-12-29 09:55

  • 小七ing (作者)

    而且客户删除app,重新安装就可以正常访问

    2021-12-29 09:58

  • 小七ing (作者)

    客户换小程序也很快不会有问题,就app出现问题

    2021-12-29 10:14

  • DCMarvel

    回复 小七ing: 你把timeout 调时间长点 默认60000 你调个120000 然后把 firstIpv4 设为true

    2021-12-29 10:36

  • 小七ing (作者)

    回复 DCMarvel: 使用的是geoTrust 签发证书,是不是有关系

    2021-12-29 11:12

  • DCMarvel

    回复 小七ing: 这我哪儿猜去 sslVerify 设为false 试试

    2021-12-29 12:48

小枫叶

小枫叶 - 外包接单加v:wlmk1234567 注明来意

需要用多久会出现这种情况,出现的频率多么

  • 小七ing (作者)

    挺多客户反馈,其他没反馈的也可能不用app了,自己测试团队测试不会出现,客户是华为手机

    2021-12-02 09:18

取舍

取舍 - 我们都如流星短暂 但谁能像它闪耀

其实 我也遇到过这个问题, 小程序 进入没有请求, 偶尔出现这样的问题, 我怀疑是封装的请求在执行uni.request之前报错了, 但是我看看应该不太会有问题, 除非是 获取缓存的api拿到的东西有问题 导致报错, 之后 把小程序 删除 重新进入就没有问题了, 所以怀疑是缓存的问题, 但是 出现问题频率很小, 没有仔细排查

  • 小七ing (作者)

    对,我小程序也出现过,概率很小

    2021-12-03 09:34

  • 小七ing (作者)

    客户量多了,问题就会呈现出来

    2021-12-03 11:33

取舍

取舍 - 我们都如流星短暂 但谁能像它闪耀

楼主 删除app重新安装 估计也是缓存有问题

  • 小七ing (作者)

    可能缓存导致的,onshow方法不执行

    2021-12-03 11:34

小枫叶

小枫叶 - 外包接单加v:wlmk1234567 注明来意

app我已经用了两天了,没出现问题

  • 小七ing (作者)

    我们天天用也没出问题,但是就是有客户反馈,安卓手机华为p20

    2021-12-03 12:04

  • 小七ing (作者)

    可能要触发某些行为才能复现,比较难观察

    2021-12-03 12:05

  • 小枫叶

    回复 小七ing: 难搞

    2021-12-03 13:13

hws007

hws007 - 我就是我!

估计是缓存问题!我发现这缓存!有时会出现无缘无故给删除了,导致后面要根据缓存数据来请求的失败

  • 小七ing (作者)

    不好复现

    2021-12-08 11:43

  • hws007

    的确不好复现,也没找到原因

    2021-12-14 04:48

z***@gmail.com

z***@gmail.com

好像我也遇到过 但是从某一次重新打包后就没有出现过了

  • 小七ing (作者)

    不好复现

    2021-12-08 11:43

  • z***@gmail.com

    回复 小七ing: 是的 不过目前没有出现了哈

    2021-12-09 09:53

  • 小七ing (作者)

    回复 z***@gmail.com: 我们自己也没出现,客户出现的

    2021-12-09 10:12

2***@qq.com

2***@qq.com

顶顶顶顶顶顶顶

  • 小七ing (作者)

    顶顶顶

    2021-12-13 15:25

  • DCloud_Android_ST

    回复 小七ing: 你的问题还是需要你们先确认问题原因。否则我们这边也很难处理该问题。问题现在没有明确性无法处理。

    2021-12-20 11:09

小七ing

小七ing (作者) - 大家好

又有客户反馈uni.request执行不了,只能删除重新安装

  • 小七ing (作者)

    webview可以访问,就是接口不能访问

    2021-12-23 11:29

小七ing

小七ing (作者) - 大家好

顶顶顶顶顶顶顶

取舍

取舍 - 我们都如流星短暂 但谁能像它闪耀

我现在刚好遇到了

  • 小七ing (作者)

    这么巧

    2021-12-23 13:52

1***@qq.com

1***@qq.com - 无介绍

uni.request 在安卓端,会无法触发,小程序模拟器无问题。安卓端我是这样测试,我把uni.request夹在console.log中间,放onLoad()来运行,结果console.log触发了,uni.request死活没触发,服务器也没收到https请求

  • 小七ing (作者)

    而且是偶尔性的吧,很难触发这个问题,好几个客户反馈

    2021-12-29 08:45

  • 小七ing (作者)

    不行只能自己开发原生插件请求网络了

    2021-12-29 08:51

1***@qq.com

1***@qq.com

我遇到一个 手机端的 H5网页调用不了uni.request ,不过只有百度浏览器调用报错,其他浏览器可以
https://www.hhjm168.com/ 网页地址
但是在招商加盟的那里提交信息请求又能成功

贴个基础请求代码

request(url, method = 'GET', data = {}, success, fail) {  
    return new Promise((resolve, reject) => {  
        if (isShowLoad) {  
            uni.showLoading({  
                title: "加载中...",  
                mask: true  
            })  
        }  
        uni.request({  
            method: method,  
            url: url,  
            data: data,  
            header:{'Content-Type':'application/x-www-form-urlencoded'},  
            dataType:"json",  
            success: (res) => {  
                if(this.checkResponse(res,url)){  
                    success(res.data);  
                }else{  
                    fail(res);  
                }  

            },  
            fail: (err) => {  
                uni.showModal({  
                    title: '提示',  
                    content: JSON.stringify(err),  
                    showCancel: false,  
                });  
                fail(err);  
            },  
            complete: () => {   
                try {  
                    setTimeout(()=>{uni.hideLoading();},300)  

                } catch (e) {  
                    //TODO handle the exception  
                }  

            }  
        })  
    })  
}
1***@qq.com

1***@qq.com - 无介绍

请检查下服务器,和证书

1***@qq.com

1***@qq.com - 无介绍

提前说元旦快乐

  • 小七ing (作者)

    元旦快乐

    2022-01-01 18:07

chenli

chenli

在不好复现排查情况下,可以考虑把认为可能存在问题的 uni.request() 替换成其它方案的接口请求,比如flyio。当然这个替换成本在有一些项目上可能会有不少工作量。替换后再看看用户使用情况。

4***@qq.com

4***@qq.com

哈哈哈哈哈
哈哈哈哈

  • 小七ing (作者)

    噢噢噢噢噢噢噢噢

    2022-01-05 11:33

北京物通

北京物通

请问解决了吗? 遇到同样的问题

  • 合肥前端小菜鸡

    这么说的话 我好像也遇到这种情况 某段时间 某个用户反馈项目用不了 没请求

    2022-07-29 17:59

嗨哆嚒

嗨哆嚒 - 嗨哆嚒

运行到手机遇见了同样的问题,仿佛uni.request不存在。昨天还能用,那一块的代码没有动过。运行到内置浏览器没问题。

  • 3***@qq.com

    一样的问题,loading都打开了,request仿佛没有一样。

    2022-09-20 23:29

3***@qq.com

3***@qq.com

顶顶顶

小七ing

小七ing (作者) - 大家好

已经解决没有客户反馈此问题

  • 2***@qq.com

    如何解决的

    2022-09-21 11:47

  • 小七ing (作者)

    回复 2***@qq.com: 请求不要证书验证

    2022-09-21 12:01

  • jjon

    你是怎么解决的,可以告诉我一下吗

    2022-10-10 10:00

jjon

jjon - Jon

我最近也遇到这种情况了,就是uni.request没有触发,逻辑代码没有变,就云打包后,在安卓机上不触发请求,切换回之前历史打的包(代码逻辑一样)就可以,你的问题现在解决了吗

如下图,正常情况如果调用了,就算失败了,那也应该进fail回调的,现在一直处于请求前的加载中

Reaper

Reaper

2023 年了好像还没解决 我已经知道如何复现这个BUG 各位可以自行试试
https://ask.dcloud.net.cn/question/164730

要回复问题请先登录注册