微信版本:8.0.16
代码片段:https://developers.weixin.qq.com/s/MhuGQ2m77vxl
预计效果:依次打印 requestStart->abortStart->requestError
真机实际效果:依次打印 requestStart->abortStart->requestSuccess
如下面代码,只是间隔了10毫秒,就无法中断请求,依然走到了success中,此问题开发工具上能正常走fail中断请求,但是真机上不行,还是走success。
但如果去掉setTimeout,在request请求后直接调用RequestTask.abort()是可以中断请求的,但是只要间隔一点时间,就无法中断请求。
我实际请求的服务器地址响应成功需要一秒多,这期间执行RequestTask.abort()更是无法中断请求。
按照文档找半天了,没找到是什么问题......求各位大神解答一下这个是什么问题,为什么真机上不生效
console.log("requestStart")
const requestAbort = wx.request({
url: "http://www.baidu.com",
method:"GET",
success:function(e){
console.log("requestSuccess")
},
fail:function(e){
console.log("requestError")
}
})
setTimeout(() => {
console.log("abortStart")
requestAbort.abort();
}, 10);
都2022年了,我在真机上也没有效果
2023-4-28,真机也能request.abort()了
2023 年了,依旧是 abort 模拟器有效,andriod/ios真机运行没有效果
2020-04-14 ,2.23.4,android真机上仍然没有效果
在开发者工具上想要使用request.abort(),可以尝试在本地设置里面开启【使用独立域进行调试】。
微信开发者工具版本 1.05.2203070
调试库 2.19.2