V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
crystom
V2EX  ›  问与答

通过 https 下载能保证文件传输的可靠性吗?

  •  1
     
  •   crystom · 2022-11-30 18:28:51 +08:00 · 1231 次点击
    这是一个创建于 722 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现象:做了一个简单的网站,用户从网站点击,下载 apk 文件,apk 资源放在 cdn 上,但有很小的概率下载到的文件不对,导致下载的 apk 文件无法安装;联系用户取到错误的文件跟正确的进行比对,发现文件大小字节数完全一致,但是其中少部分字节错乱了(错乱的部分是一小段)。整体哈希值不对,该现象已经有几个用户反馈。

    补充 1 ) apk 文件较大,走的是 204 chunk 下载
    补充 2 )链接地址是 https ,绝对没问题
    补充 3 )下载终端是安卓手机和 mac 都出现过。怀疑可能是,1 )源站服务器或 2 ) cdn 的问题或 3 )用户终端网络太差(例如路由器信号差)。

    我想请教一下,用户终端网络差这个原因,有可能导致 https 下载到错误的文件吗?个人理解 https 有校验机制,只会下载失败不会下载错误。
    9 条回复    2022-12-01 02:42:18 +08:00
    crystom
        1
    crystom  
    OP
       2022-11-30 18:29:29 +08:00
    用户重新下载一下 又正常了
    crystom
        2
    crystom  
    OP
       2022-11-30 18:29:56 +08:00
    但是多个用户重复出现这样的情况,所以请教一下 V 友
    Twan
        3
    Twan  
       2022-11-30 18:38:21 +08:00
    如果仅考虑 https 排除 CDN 作祟 传输文件 做过单日几十万下载量的表示 大约是没见过这种情况
    oott123
        4
    oott123  
       2022-11-30 19:06:52 +08:00 via Android
    CDN 回源坏了 所以一大批用户都一起坏了
    tool2d
        5
    tool2d  
       2022-11-30 19:10:56 +08:00 via Android
    https 不会校验文件是否有错误,但会校验传输错误,大概率是 cdn 的锅。
    swulling
        6
    swulling  
       2022-11-30 19:25:33 +08:00
    嗯,感觉也是 CDN 的问题,如果是用户网络传输问题,那么他本地应该就会提示下载失败。
    nlzy
        7
    nlzy  
       2022-11-30 19:56:04 +08:00
    > https 有校验机制,只会下载失败不会下载错误。

    对的。严谨点说这叫数据完整性,不叫可靠性。
    JohnBull
        8
    JohnBull  
       2022-12-01 00:21:05 +08:00
    这不是 https 的锅,肯定是 CDN 的 BUG ,数据在通过 https 发出之前就已经错了
    ysc3839
        9
    ysc3839  
       2022-12-01 02:42:18 +08:00
    https/tls 能,http/tcp 不能
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4890 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 03:55 · PVG 11:55 · LAX 19:55 · JFK 22:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.