小程序
小游戏
企业微信
微信支付
扫描小程序码分享
我公司在开发小程序过程中发现,在网络不好的情况下,wx.login和wx.getUserInfo这两个接口会出现卡死现象而且不会回调fail函数,即使网络状况变好了也长时间一直卡死了,并没有回调fail或complete函数,也没有重新加载页面,这个怎么解决,wx.login和wx.getUserInfo接口不能设置超时吗??
5 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
微信不给超时设置,自己弄一个setinterval或者settimeout怎么样,网络问题确实也没什么更好的解决办法.
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
我们的问题跟您测试的差不多又稍有不同,我也试过完全关了网络的情况,就是您所测试的那样,没问题。
但我们的情况是“网络不好”,和完全关了网络是不一样的效果,会卡死在那里不会调用任何回调函数,不信您可以试试,当然模拟“网络不好”的情况不太容易,除非您的网络像我们公司一样的烂:)
由于没调用任何回掉函数,我们暂时没办法处理卡死这种情况,然后就是小程序只回到了后台没有真正关闭,用户要手动杀了进程然后再进入才能重新加载,体验很不好
后来我们想到了onShow,但是发现onShow不能传参数,而我们的业务需求必须要求传参数,因此放弃了onShow
我提这个问题是希望官方的人能关注一下,这个问题有可能是微信小程序底层网络通信逻辑造成的,如果能优化了最好,不行我们就自己从产品角度想办法了
不管怎样,非常感谢您的好意,谢谢
骚年 你成功的引起了我的注意.额,好吧 我确实没有看清楚题目,我已经瞎了.那作为瞎子的我刚刚做了一下测试,发现 确实我之前说的两个设置对wx.login和wx.getUserInfo 没有效果.
我在手机上关了网络对wx.login接口测了好几次, 回调函数都有调到,然后就是时间基本都在16到17S之间.
然后什么也有发生可能是因为小程序只是回到后台了,并没有关闭.所以再次进入的时候并没有调用接口,
我刚刚测试的时候有遇到过,然后杀了进程再进就又可以了. 额 就这么多了 不知道有没有用
1楼的先请问您是开发者还是官方的客服,如果是开发者您是好意帮忙我表示感谢不说什么了,如果是官方的客服我只能呵呵了!
我拜托您先看清楚我的问题好吗,您让我注意看文档,自己却根本没仔细看我的问题
我问的是wx.login和wx.getUserInfo这两个接口,不是wx.request,不是wx.request,不是wx.request!!!
这回够清楚了吗??
现在请您告诉我wx.login和wx.getUserInfo这两个接口开发文档里哪里有说明设置超时的???
app.json 里面的networkTimeout 在开发文档配置里面有说明
wx.request 可以返回一个requestTask对象,然后调用abort()可以中断请求,在开发文档wx.request的里面下面部分,注意看文档啊同学,requestTask.abort()这个要基础库1.4以上的
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
微信不给超时设置,自己弄一个setinterval或者settimeout怎么样,网络问题确实也没什么更好的解决办法.
我们的问题跟您测试的差不多又稍有不同,我也试过完全关了网络的情况,就是您所测试的那样,没问题。
但我们的情况是“网络不好”,和完全关了网络是不一样的效果,会卡死在那里不会调用任何回调函数,不信您可以试试,当然模拟“网络不好”的情况不太容易,除非您的网络像我们公司一样的烂:)
由于没调用任何回掉函数,我们暂时没办法处理卡死这种情况,然后就是小程序只回到了后台没有真正关闭,用户要手动杀了进程然后再进入才能重新加载,体验很不好
后来我们想到了onShow,但是发现onShow不能传参数,而我们的业务需求必须要求传参数,因此放弃了onShow
我提这个问题是希望官方的人能关注一下,这个问题有可能是微信小程序底层网络通信逻辑造成的,如果能优化了最好,不行我们就自己从产品角度想办法了
不管怎样,非常感谢您的好意,谢谢
骚年 你成功的引起了我的注意.额,好吧 我确实没有看清楚题目,我已经瞎了.那作为瞎子的我刚刚做了一下测试,发现 确实我之前说的两个设置对wx.login和wx.getUserInfo 没有效果.
我在手机上关了网络对wx.login接口测了好几次, 回调函数都有调到,然后就是时间基本都在16到17S之间.
然后什么也有发生可能是因为小程序只是回到后台了,并没有关闭.所以再次进入的时候并没有调用接口,
我刚刚测试的时候有遇到过,然后杀了进程再进就又可以了. 额 就这么多了 不知道有没有用
1楼的先请问您是开发者还是官方的客服,如果是开发者您是好意帮忙我表示感谢不说什么了,如果是官方的客服我只能呵呵了!
我拜托您先看清楚我的问题好吗,您让我注意看文档,自己却根本没仔细看我的问题
我问的是wx.login和wx.getUserInfo这两个接口,不是wx.request,不是wx.request,不是wx.request!!!
这回够清楚了吗??
现在请您告诉我wx.login和wx.getUserInfo这两个接口开发文档里哪里有说明设置超时的???
app.json 里面的networkTimeout 在开发文档配置里面有说明
wx.request 可以返回一个requestTask对象,然后调用abort()可以中断请求,在开发文档wx.request的里面下面部分,注意看文档啊同学,requestTask.abort()这个要基础库1.4以上的