欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

电子错误!承诺始终悬而未决!Session.getBlobData 方法踩到了陷阱!

最编程 2024-07-18 10:03:57
...

问题的起因

electron网络拦截的需求,开始试验方案时,发现的问题。

当我拦截的请求为上传文件post类型的请求时,偶尔会出现session.getBlobData方法一直pending的问题。

排查问题原因

首先api使用的方式是否正确

image.png

request.uploadData中取出的blobUUID,在文档中就是要通过ses.getBlobData获取。

那既然使用的没有问题,究竟是什么原因导致的 这个api时好时坏呢

问了chatGPT基本一无所获,在google时,有一个回答说如果上传的文件过大,会导致无返回。

于是乎回去尝试了一下,发现真™是这样!那问题的矛头就指向了electron自己本身了。

由于我使用的electron版本很老(12.1.1),现在版本都到30了,直接去搜issues,看看这个问题有没有open或已解决。结果如下↓

image.png

22年8月的版本,有一位大佬解决了这个bug。

image.png

就是这么两行代码呀!!

bug fixed的正式版 20.1.3

electron@20.1.3的版本中这个问题被正式修复上线了。大家可以正常使用啦!

image.png