互联网

发出去的微信为啥还能撤回?看完这个终于明白了

 

06.02.jpg

  大家都知道,微信有个“后悔药”——消息撤回,即发出后2分钟内的消息不再让对方看到,仅留下一个看起来比较脑残的文字提示。

06.01.jpg

  关于为何限制为2分钟、以及为何会出现文字提示,我们之前已经进行过解答。

  另一个问题是,微信是如何做到“覆水回收”的呢?

06.jpg

  以MobleA给MobileB发送消息与消息撤回为例:

  A.MobileA发送消息时,会在自己的微信客户端上生成全球唯一的UniqueMsgID,并将该UniqueMsgID附带在即将发送的消息体中。

  B.MobileB收到消息时,将消息体存储起来,并展示该消息。

  C.MoblieA撤回消息时,MobleA知道自己已经发送的每一条消息体的UniqueMsgID,需要撤回哪一条,则将那一条消息的UniqueMsgID附带在撤回命令中。

  D.MoblieB收到撤回命令时,根据撤回命令中的UniqueMsgID,在自己的数据库中,寻找对应的消息体,然后予以撤回效果展示。

[!--page.stats—]
希望看到您的想法,请您发表评论x