我不太理解。
服务器既然都存了为啥还自动先下载,再上传转发?
收了一个 70m 左右的压缩包,我要在电脑打开,因为电脑没有登录微信,我就打开了 web 版的文件传输助手,然后手机点击转发到文件传输助手,结果我就看到有上传进度并且很慢(不要吐槽这个速度,办公楼这边 5G+iOS 就这个破速度,可能 4G 反倒还快些),
然后当我再次点开那个收到的文件消息,已经显示可以直接打开了(此时转发的上传进度条还没有完成),而我转发之前,那个页面显示的是下载按钮(底部还有 13 天后失效啥啥啥的字样)。
这种转发逻辑这么设计有什么优点或者目的吗?
一开始我以为是为了省流,可这一来一回不是更费流量了么。
我能想到的是防止初始文件消息被撤回?那么此时转发就会失败,但是先下载就不一样了,最多只会下载失败?
#24 惊现大佬释疑
所以由于加密导致其实每次发出去的文件并不一样(虽然加密前是一样的),因为上传的是加密后的内容
那这就难怪了 空间啥的都说得通了 用户看到的文件虽然是一模一样的 但是微信看起来的不一样(加密后不同)
容我消化消化 各位看官你们懂了吗
1
iOCZS 36 天前
就说微信要不要保留文件吧。长期保留肯定耗费空间,定期清理就可以减少消耗。但是文件消息肯定长期存在你本地的啊,到时候怎么转发?
|
2
GooMS 36 天前 via Android
最简单呗 不在乎这些小东西
|
3
minami 36 天前
张小聋是 foxmail 的作者,你把微信想象成一个邮箱就能搞清楚小聋的设计逻辑了
|
4
paopjian 36 天前 1
微信号称不保存数据, 那转发逻辑就是所有信息存一遍再发送, 但是奇葩的是同一个文件还会存多份并且下来了竟然还能过期
|
5
lyxeno 36 天前
我猜:微信先做的发送和下载文件功能。开发者开发转发文件功能时并没有新开发一套转发文件逻辑。而是复用了原来的之前的下载和发送文件功能。
|
6
tool2dx 36 天前
你这种“不下载直接转发”属于小众需求,也许微信觉得没必要单独处理吧,一般都是下载或上传。
|
7
StinkyTofus 36 天前
@minami #3 初版微信确实是基于邮箱架构的, 但是这么多年下来, 有没有重构不清楚。
|
8
whathappen 36 天前
和 4 楼说的一样,这样就不用被说文件经过 TX 服务器了。
|
9
ahsgjs 36 天前 4
我来告诉你真实原因吧。小笼:有种别用/爱用不用/拿我咋滴?
不是我恶意脑补。你可以自己看看微信更新时的日志都是什么?永远都是修复了若干问题这样的敷衍之词。“态度决定一切”日志是你不能决定的部分吗? |
10
CEBBCAT 36 天前
@ahsgjs #9 Youtube 的更新日志你有没有看到过?又如何解释? https://ezone.hk/article/2806331
@tool2dx #6 文件下载又上传,再小的需求乘以微信的用户量也是庞大的成本,微信发展到今日还不去做这件事,我认为他们内部肯定也是有过分析的。要么是积重难返,要么是故意为止。比如,可能是为了厘清文件所有权,所以先下载,再从本地上传 |
11
wow0o 36 天前
代码简单..
|
12
ZeroDu 36 天前 1
存就存了,还特么会过期就离谱
|
13
Paladin 36 天前
就是傻逼产品啊
|
14
shenyiyouge 36 天前
前提错了,服务器没存,微信一直宣传所有聊天数据不在云端存储,也一直是这么做的。
|
15
sir283 36 天前 via Android 10
就是个傻逼程序,没有什么逻辑,就是单纯的为了恶心用户这样设计的,怎么恶心怎么来。换个设备登录就不能同步聊天记录跟文件,文件已经下载到本地了,过段时间还会自动过期打不开 转发文件还会频繁复制备份。都 2024 年了,还有这种脑瘫产品,张小龙没妈。
|
16
ixcode 36 天前
不要用正常人的思维去理解微信的产品设计,毕竟张小龙不是妈生的
|
17
Jakarta 36 天前 via Android
我个人感觉是,为了抢占市场快速上架的产物,根本没有多少底层设计,怎么简单无脑就怎么来。
|
18
zerovoid 36 天前
微信,无论 app 还是 pc 端,都是垃圾中战斗机,
很难想象这是中国最大的互联网公司设计的产品, 都不说和 telegram 比了,连自家的 QQ 都不如。 |
19
zerovoid 36 天前
@shenyiyouge 想多了,微信绝对有存的,公安拿一个案件协查函过去,微信就把用户聊天内容拿出来了。要是微信真的不存,那所有人都拿微信做黑产通讯软件了。
|
20
InDom 36 天前 2
我们来看下面的例子:
问题一: 现在有一个水龙头,一个空水桶和一个着了火的草垛。 我们应该怎么扑灭草垛上的火? 程序员答:把水桶里面装满水,然后去扑灭草垛上的火。 问题二: 现在有一个水龙头,一个装满水的水桶和一个着了火的草垛。 我们应该怎么扑灭草垛上的火? 普通人答:用装满水的水桶直接灭火。 程序员答:把水桶倒空,然后就可以用问题一的解决方案。 问题三: 现在有一个水龙头,一个装满水的水桶和一个草垛。 我们应该怎么办? 张小龙答:点火,然后用问题二的解决方案。 |
21
shenyiyouge 36 天前
@zerovoid #19 哪个公安把用户聊天内容调出来了?你见过还是听别人吹的?微信只在云端过滤并不在云端存储,你杠就是你对
|
22
skyrocketing 36 天前
@tool2dx qq 的逻辑就是不下载,直接在电脑上右键或者手机上长按转发
|
23
captain55 36 天前
张小龙:app 都免费给你用了,用你点空间怎么了?
|
24
rozbo 36 天前 30
这个问题没有你们想得那么复杂,别阴谋论了。。。。内部人士给你解答一下
1. 文件确实没有存在微信服务器上,而是 aes 后存在 cdn 服务器上。在发送文件时,其实是发送的文件的 id 和协商的密钥。 2. cdn 服务器 3 天左右会清理掉这些文件。 这样,如果此时直接转发文件的 id 和密钥会导致几个问题, 1.文件所有权不清晰 2.文件过期时间不容易计算,资源不易释放 3.文件密钥泄漏 因此,最简单的方式就是 A 用户把 ID 和密钥发给 B 用户后,B 用户解密并并上传 cdn 后,再把新的文件 id 和密钥发给 C 用户。 |
25
williamtech 36 天前 1
笑死了
|
26
ala2008 36 天前
简单来说,就不允许转发文件。。
|
27
Y25tIGxpdmlk 36 天前
@CEBBCAT #10 对啊,不矛盾啊,Youtube 也是一坨屎啊,你敢说 Y2B 的 APP 好用???
抛开内容和广告,国内随便一个爱优腾的 APP 都比 y2b 好用。其实现在广告也可以不抛开,Y2B 的广告更恶心 |
28
Y25tIGxpdmlk 36 天前
@shenyiyouge #21 一般小案子,小派出所去微信,肯定调不出来的。当然如果遇到重大案情,那是 100%可以调到的。不是微信说不存就是不存的,国家法律不允许他不存
|
29
Y25tIGxpdmlk 36 天前
|
31
shenyiyouge 36 天前
@Y25tIGxpdmlk #28 哪条法律,你说的大案调取微信聊天记录这种事有案例吗?说个名字我自己去查。
|
32
Leasing 36 天前
@Y25tIGxpdmlk #28 依然是杠,就没有一点点干货,完全是猜测🤣
|
34
Leasing 36 天前 1
一些人对微信/对张小龙这么大恶意? V2EXer 大部分都是程序员吧,是被 PM 虐的有火上网发泄来了?
|
35
tyrantZhao 36 天前
就是 wxg 最开始那帮人是做邮件起家的,所以很多都是复用的,后面基本没人会改,因为没什么 kpi 收益。
|
36
FawkesV 35 天前
@Y25tIGxpdmlk #28 你以为
|
37
Y25tIGxpdmlk 35 天前
|
38
jaio1 35 天前
我在 b 站爬下来的视频文件发给别人,我这里显示已发送,对面实际却没收到
|
40
darkengine 35 天前
|
41
niubilewodev 35 天前
就是为了让转发变的有难度。
要不然就有片哥在微信卖片了。 |
42
hahasong 35 天前
因为微信是按做邮箱的架构做的,这样就都能解释通了
|
43
secretlowland 35 天前
@lisxour 24 楼已经解释得很清楚了,再说别人没脑子,是不是得想想到底是谁没脑子
|
44
Rnreck 35 天前
我只觉得这样做很呆很傻
|
45
secretlowland 35 天前
@darkengine 其实不用管 CDN 删不删,文件过期时间只针对用户而言,过期后这个用户不能访问该文件,其他用户各自有各自的访问权限和时间限制。
|
46
secretlowland 35 天前
@Rnreck 建议你先看看 24 楼的解释,直接开喷会显得自己很傻
|
47
Rnreck 35 天前
@secretlowland #46 那这样怎么解决本地的文件存储问题呢,每次用微信几个月之后都会膨胀到 10g+,这是小而美的实现方式吗
|
48
secretlowland 35 天前
@Rnreck 微信好友发送的文件并不是自动下载,未下载之前这个文件并不属于你,你下载了才能使用和转发,既然下载了,这文件就是你的“私人财产”,微信不应该也无权擅自删除你的文件,所以在必要的时候定期清理不需要的文件其实是用户自己的责任,并且微信也提供了文件清理的功能。不过,我觉得为了更好的用户体验,微信可以在适当的时候引导用户删除可能不再需要的文件。
|
49
gpt5 35 天前 via iPhone
|
50
lisxour 35 天前
@secretlowland #43 他是张小龙?还解释上了
|
51
ligo 35 天前 via Android
微信的服务器只转发消息,比如撤回也是一条消息。
|
52
PrinceofInj 35 天前
@rozbo 这么一解释看上去好合理呀。微信要是能出一个付费模式,所有内容存云端,我感觉大把人会付费。
|
53
secretlowland 35 天前
@lisxour 他不是,你是
|
54
xixun 34 天前 via iPhone
看了楼上说的,微信云端还真不存聊天记录啊😳
|