手里负责的项目都是微信端开发,微信小程序,以及公众号相关,所以最近在看微信开发的书。
今天碰巧看到一篇知乎讲如何实现微信防撤回功能,所以自己去实现了下,颇为好玩。
微信防撤回功能轻松实现~
先贴上知乎原帖:
https://zhuanlan.zhihu.com/p/25689314?utm_source=zhihu&utm_medium=social
实现思路,将接收到的消息都存进一个字典(msg_dict),接收到撤回通知时,提取撤回消息的id,从字典中进行比对,然后发送、保存。那么字典能放得下那么多消息吗?当接收到新消息时,执行函数对字典中超过两分钟的消息进行清理(两分钟内消息不会很多)。
对于四种消息:图片、语音、附件、视频 这些不像文字一样、没法直观看见消息内容。于是收到消息后,将这些消息内容下载缓存,超过两分钟进行删除。同时,如果撤回这些消息的话,便将相应的消息内容保存到另一文件夹中,并发送消息到文件助手进行通知。
原主谈过的我就不谈了。谈几点实现的注意点:
(1)建议在服务器端挂着,这样可以一直接收撤回的消息,不用自己的电脑一直开着啦。(我就是这么做的
(2)服务器端需要配置python3.5环境,下载地址传送:https://www.python.org/downloads/release/python-353/
(3)如果大家比较懒的话我给大家贴个在51CTO上看到的封装好的exe,叫wMsg, 大家直接拿走扔服务器上跑即可。wMsg下载地址传送:http://down.51cto.com/data/2292498 wMsg使用非常简单,直接运行跳出来一个二维码,扫一下就挂上了,会自动在 文件传输助手 里接收撤回消息。(当然需要python3.5环境
(4)我的服务器是windows sever2012 还需要配一下才能正常运行:
tip1:会提示缺少api-ms-win-crt-math-|1-1-0.dll , 下载地址传送: http://qunying.jb51.net:81/dll/2015/api-ms-win-crt-math-l1-1-0(jb51.net).rar 里面有使用方法也,安在服务器上。
tip2:会提示没有桌面体验功能,添加桌面体验功能方法传送:http://543925535.blog.51cto.com/639838/1053166/
(5)唯一不好的地方是会当作微信网页端运行,会挤掉你的pc端微信(这俩只能一个在线),所以如果需要pc端办公的话就不太方便拉~
所以有兴趣的话可以自己试一试拉,虽然和微信开发不着边,但是防撤回功能还是挺有意思的,说不定可以看到哪个害羞的妹子给自己表白撤回了呢,想想还有点小激动呢。
想写代码尝试的方法,不想写代码的懒人方法,自己电脑上运行的方法,服务器端运行的方法以及环境该怎么配遇到问题该怎么解决都帮大家找好啦,照着步骤一步一步来,轻松实现咯,非常简单。
有问题留言哈