Warning: Illegal string offset 'download' in /www/wwwroot/www.oilcn.net.cn/wp-content/themes/wpzt-hot/template-parts/single/single-pc.php on line 4

百度浏览器下载网站源码下载(android文件浏览源码)

25次
2021-06-22

百度网盘对浏览器端下载大文件做了一些限制百度浏览器下载网站源码下载,当超出一定大小的文件应当使用百度云管家才可以下载,这给用户的使用带给了不便。

[不看剖析请直接拉至页底]

1. 百度网盘限速原理

当点击下载一个大文件的时侯百度网盘会弹出那样一个提示框。

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第1张

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第2张

我们给下个断点,看看是哪些代码争创了这个提示框。

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第3张

然后重新点击下载一个大文件,我们发觉断点已然断下去了。

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第4张

可以看出这儿是在把提示对话框显示下来,我们还要查看调用栈往上找找。

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第5张

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第6张

跳过一些jQuery的操作,我们听到了这么一个函数,继续往上找。

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第7张

这个isPlatformWindows的分支太可疑百度浏览器下载网站源码下载,我们和出来看一下,于是我把DOM断点取消了,并在1748行这儿下了个断点。

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第8张

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第9张

断出来了,跟出来瞧瞧。

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第10张

这个函数也是简略的判定了 navigator.platform 这个平台相关的字符串,我们更改一下瞧瞧会发生哪些结果

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第11张

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第12张

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第13张

让代码继续跑起来

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第14张

嗯,我们成功了。

2. 写段代码来破解吧

从后面的调试中我们早已晓得了百度是通过判定window.navigator.platform 是不是以 win32 开头来辨别是否是运行浏览器下载的,所以我们只须要更改这个变量就轻松解除了限制。

百度浏览器下载网站源码下载(android文件浏览源码) (https://www.oilcn.net.cn/) 综合教程 第15张

经过尝试我发觉,platform这个属性被百度冻结了。

所以只好更改 navigator 。

修改代码如下:

Object.defineProperty(this , 'navigator' , {value: { platform: "" }});

一句话小结:

打开浏览器控制台(F12) 在命令行行Object.defineProperty(this , 'navigator' , {value: { platform: "" }}); 这段代码即可解除百度网盘对浏览器下载大文件的限制。

END

发表评论