BND2 v2.0.0 图形界面的百度网盘不限速vip下载器免费无限制版

本文共有1509个字,关键词:BNDBND2百度网盘百度网盘下载百度下载

  BND2 是国人好人编写的一款图形界面的百度不限速下载器,支持 64 位 Windows 和 Mac。我们这里下载 Windows 平台版下载。

  BND2 基于 Electron、React、golang 实现,通过主框架 - UI - 内核的分离实现 UI 以及内核的自动更新。

BND2.jpg

  主框架:Electron 主进程,负责版本检查、账号登录以及管理内核
  UI:React 实现主界面,编译后上 CDN,通过 Electron <webview> 加载
  内核:golang 实现的 HTTP 服务,负责响应 UI 请求,管理 Aria2 进程。 编译后可执行二进制上 CDN 提供给主框架拉取更新

  • 自检更新
    主框架启动时会从远程更新服务器上获取版本,主要包括两个版本信息:

主框架版本:如果有升级,则提示用户需要从指定位置手动下载安装包
内核版本:如果有升级,则自动从指定位置下载内核二进制
Electron 内建有热更新机制,但不支持 Linux(虽然目前 BND2 也没支持 Linux,但未来会考虑支持),并且我们有自己的产品版本管理机制,所以就没有考虑使用 Electron 内建的热更新了。
另外,无论给 Windows 还是 Mac 的升级包都是使用 zip 包,主要是为了统一。但 zip 包不会保留可执行权限,Linux/Mac 解压后需要再给二进制赋一下可执行权限。

  • 账号登录
    为了“复用”登录,我们是通过 webview 直接引的待登录站点的 web 登录界面。没有在本地做登录框主要是考虑到:登录逻辑复杂,特别是登录异常处理。比如二维码、验证码、短信校验等等,这些如果通过后端对接非常繁琐,外部站点改一下实现就要跟着变,维护工作量巨大。

登录后我们只需要获取一下关键的 cookie 就行了,然后把这个 cookie 传给内核,后续由内核负责和外部站点的接口进行交互。

  • webview
    通过 webview 从 CDN 加载,如果要升级只需要编译并发布 CDN。

每次启动加载的 HTML 是通过在客户端加入 ?时间戳来引入,也就是说这个文件肯定不会在 CDN 上命中,都是回源加载最新的,CDN 主要是加速其引入的其他资源文件。

  • 前后端交互
    UI 和内核的交互没有通过传统的 HTTP AJAX 实现,而是统一通过 WebSocket 来实现全双工的异步通讯。这样设计主要是考虑到 BND2 在异步推送的场景比较多,比如全局统计、下载进度统计、反馈内核报错等。

// 下载链接 //

版本下载网址大小
v2.0.0城通盘下载 <==> 皮皮盘下载47.32 MB

如果有需要解压密码,默认解压密码为 locateinchina.com

版权声明:本文为作者原创,如需转载须标注明本文网址。本文内软件来自网络收集,如有侵权,请联系[email protected]下线。
添加新评论
暂无评论