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

理性讨论:微信文件转发之前会先下载到本地,这么做的设计逻辑

  •  1
     
  •   dejavuwind · 4 小时 34 分钟前 · 1643 次点击

    我不太理解。

    服务器既然都存了为啥还自动先下载,再上传转发?

    收了一个 70m 左右的压缩包,我要在电脑打开,因为电脑没有登录微信,我就打开了 web 版的文件传输助手,然后手机点击转发到文件传输助手,结果我就看到有上传进度并且很慢(不要吐槽这个速度,办公楼这边 5G+iOS 就这个破速度,可能 4G 反倒还快些),

    然后当我再次点开那个收到的文件消息,已经显示可以直接打开了(此时转发的上传进度条还没有完成),而我转发之前,那个页面显示的是下载按钮(底部还有 13 天后失效啥啥啥的字样)。

    这种转发逻辑这么设计有什么优点或者目的吗?

    一开始我以为是为了省流,可这一来一回不是更费流量了么。

    我能想到的是防止初始文件消息被撤回?那么此时转发就会失败,但是先下载就不一样了,最多只会下载失败?

    22 条回复    2024-10-18 14:09:51 +08:00
    iOCZS
        1
    iOCZS  
       4 小时 28 分钟前
    就说微信要不要保留文件吧。长期保留肯定耗费空间,定期清理就可以减少消耗。但是文件消息肯定长期存在你本地的啊,到时候怎么转发?
    GooMS
        2
    GooMS  
       4 小时 3 分钟前 via Android
    最简单呗 不在乎这些小东西
    minami
        3
    minami  
       3 小时 59 分钟前
    张小聋是 foxmail 的作者,你把微信想象成一个邮箱就能搞清楚小聋的设计逻辑了
    paopjian
        4
    paopjian  
       3 小时 56 分钟前
    微信号称不保存数据, 那转发逻辑就是所有信息存一遍再发送, 但是奇葩的是同一个文件还会存多份并且下来了竟然还能过期
    lyxeno
        5
    lyxeno  
       3 小时 55 分钟前
    我猜:微信先做的发送和下载文件功能。开发者开发转发文件功能时并没有新开发一套转发文件逻辑。而是复用了原来的之前的下载和发送文件功能。
    tool2dx
        6
    tool2dx  
       3 小时 52 分钟前
    你这种“不下载直接转发”属于小众需求,也许微信觉得没必要单独处理吧,一般都是下载或上传。
    StinkyTofus
        7
    StinkyTofus  
       3 小时 50 分钟前
    @minami #3 初版微信确实是基于邮箱架构的, 但是这么多年下来, 有没有重构不清楚。
    whathappen
        8
    whathappen  
       3 小时 49 分钟前
    和 4 楼说的一样,这样就不用被说文件经过 TX 服务器了。
    ahsgjs
        9
    ahsgjs  
       3 小时 35 分钟前   ❤️ 1
    我来告诉你真实原因吧。小笼:有种别用/爱用不用/拿我咋滴?
    不是我恶意脑补。你可以自己看看微信更新时的日志都是什么?永远都是修复了若干问题这样的敷衍之词。“态度决定一切”日志是你不能决定的部分吗?
    CEBBCAT
        10
    CEBBCAT  
       3 小时 0 分钟前
    @ahsgjs #9 Youtube 的更新日志你有没有看到过?又如何解释? https://ezone.hk/article/2806331

    @tool2dx #6 文件下载又上传,再小的需求乘以微信的用户量也是庞大的成本,微信发展到今日还不去做这件事,我认为他们内部肯定也是有过分析的。要么是积重难返,要么是故意为止。比如,可能是为了厘清文件所有权,所以先下载,再从本地上传
    wow0o
        11
    wow0o  
       2 小时 56 分钟前
    代码简单..
    ZeroDu
        12
    ZeroDu  
       2 小时 48 分钟前
    存就存了,还特么会过期就离谱
    Paladin
        13
    Paladin  
       2 小时 45 分钟前
    就是傻逼产品啊
    shenyiyouge
        14
    shenyiyouge  
       2 小时 34 分钟前
    前提错了,服务器没存,微信一直宣传所有聊天数据不在云端存储,也一直是这么做的。
    sir283
        15
    sir283  
       2 小时 29 分钟前 via Android   ❤️ 1
    就是个傻逼程序,没有什么逻辑,就是单纯的为了恶心用户这样设计的,怎么恶心怎么来。换个设备登录就不能同步聊天记录跟文件,文件已经下载到本地了,过段时间还会自动过期打不开 转发文件还会频繁复制备份。都 2024 年了,还有这种脑瘫产品,张小龙没妈。
    ixcode
        16
    ixcode  
       2 小时 14 分钟前
    不要用正常人的思维去理解微信的产品设计,毕竟张小龙不是妈生的
    Jakarta
        17
    Jakarta  
       1 小时 35 分钟前 via Android
    我个人感觉是,为了抢占市场快速上架的产物,根本没有多少底层设计,怎么简单无脑就怎么来。
    zerovoid
        18
    zerovoid  
       25 分钟前
    微信,无论 app 还是 pc 端,都是垃圾中战斗机,
    很难想象这是中国最大的互联网公司设计的产品,
    都不说和 telegram 比了,连自家的 QQ 都不如。
    zerovoid
        19
    zerovoid  
       22 分钟前
    @shenyiyouge 想多了,微信绝对有存的,公安拿一个案件协查函过去,微信就把用户聊天内容拿出来了。要是微信真的不存,那所有人都拿微信做黑产通讯软件了。
    InDom
        20
    InDom  
       20 分钟前
    我们来看下面的例子:

    问题一:
    现在有一个水龙头,一个空水桶和一个着了火的草垛。
    我们应该怎么扑灭草垛上的火?
    程序员答:把水桶里面装满水,然后去扑灭草垛上的火。

    问题二:
    现在有一个水龙头,一个装满水的水桶和一个着了火的草垛。
    我们应该怎么扑灭草垛上的火?
    普通人答:用装满水的水桶直接灭火。
    程序员答:把水桶倒空,然后就可以用问题一的解决方案。

    问题三:
    现在有一个水龙头,一个装满水的水桶和一个草垛。
    我们应该怎么办?
    张小龙答:点火,然后用问题二的解决方案。
    shenyiyouge
        21
    shenyiyouge  
       9 分钟前
    @zerovoid #19 哪个公安把用户聊天内容调出来了?你见过还是听别人吹的?微信只在云端过滤并不在云端存储,你杠就是你对
    skyrocketing
        22
    skyrocketing  
       5 分钟前
    @tool2dx qq 的逻辑就是不下载,直接在电脑上右键或者手机上长按转发
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5589 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 06:14 · PVG 14:14 · LAX 23:14 · JFK 02:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.