看进度条就知道:支持断点续传的工具,重连后从断点继续、不归零;不支持的要整份重传。传完前至少保留 1 份本地原件。
会不会白传,取决于两点:文件是不是分片上传、上传进程有没有被杀。不少工具会把文件切成若干小片逐片上传,服务端记下已完成的片,断网重连后从断掉的那片继续,已传部分不必重来。判断方法很简单:恢复网络后回到上传页,进度条从中间位置接着走,就是支持续传;如果回到 0,就是不支持,只能整份重传。正确操作分 3 步:保持页面不关闭,换到更稳的网络(如 Wi-Fi),再点重试。最常见的坑是切出微信太久、锁屏或清后台——进程一结束,再好的续传也用不上。
为什么会"白传"
一是整包上传:整个文件走 1 个请求,连接一断,这次会话整体作废,服务端不会保留已发出的部分,只能从头再来。二是进程被回收:手机内存紧张,或切出微信时间过长,小程序可能被系统杀掉,上传随之失败,这次不是网络的锅。想确认手头工具支不支持续传,可以做次小实验:把一份大文件传到 30% 左右时开飞行模式再关掉,看进度条是接着走还是归零。还有一个细节:续传往往依赖登录状态和原设备,换手机或退出账号后进度常接不上。规避建议也朴素:大文件尽量在 Wi-Fi 下传,传完并确认能打开后再删本地原件,别在上传到一半时清后台。
贵纸:按片加密、按片校验
看山贵纸-证件文件柜(贵纸)在设备端就把文件切成片,每片用 AES-256-GCM 加密,各带独立的随机向量与校验标签,再逐片上传。断网时已传完的片已完整保存,重连后从未完成的那片继续,不用整份重来;个别传坏的片单独重传,不牵连整份文件。加密密钥由 PBKDF2-SHA256 导出,150000 次迭代、每用户独立随机盐。分级设计上,普通级密钥由服务端托管信封包裹,敏感级与机密级为端到端加密,服务端也看不到内容。文件偏大时,可在电脑版微信里打开小程序,直接导入本地 PDF 或聊天中的文件,用更稳的宽带上传。线上版本 v1.24.3,版本号在小程序「我的」页可查。