微信公众号开发之妙解服务器5s限制

作者尝试创建一个微信问答机器人,经历了从框架选择(WxJava)到内网穿透(花生壳)的配置,遇到微信5秒限制和客服回复权限的问题。通过微信公众平台的Web端实现回复,但发现需要持续登录。利用msgId的幂等性优化响应时间,但14秒的延迟仍不理想,最终因响应时间过长而放弃项目。寻求可能的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

框架选择

内网穿透

微信5s限制

客服回复?

公众平台web回复?

 msgId唯一!

总结


上年十二月份至今年三月份ChatGpt还是挺火的,很早就想做一个属于自己的微信问答机器人,但是觉得做了自己也不太用,所以闲置了。最近又想玩了,就在程序员交友♂社区找了关于微信的bot。

很多都是几年前更新的项目,但是自从微信web更新后就不能用了。二月份左右又有些基于uos的套壳微信协议可以扫码登录的项目诞生,但是碍于有封号的风险,我一直没用微信号尝试。

最后把目光锁定到了订阅号上,开发订阅号又有几个问题。

框架选择

我用的是WxJava,但是说实话,只需要把里边部分工具提取出来用在自己项目就可以了,人家是框架,对于自己简单的场景来说有点冗余了。

内网穿透

微信公众号需要有公网地址,太久没用内网穿透了,对比很多内网穿透,最后狠下心来花了2元去花生壳认证了一波。

微信5s限制

客服回复?

网上很多都说收到消息后,转客服回复,我一个个人认证,我哪来的客服权限,果断放弃

公众平台web回复?

因为之前没接触过公众号开发,在大佬同事的提醒下,微信公众平台的web端可以给粉丝发消息,这时我还是很兴奋的,晚上回到住的地方,在服务器上对比了一下web请求中的tofakeid,发现一致,然后又进行了组合联调,发现行得通。就在我兴奋的时候,我突然发现登录微信公众平台还需要扫码,什么鬼操作,关也关不掉啊,我也不知道cookie的有效期是多久,每次再扫码登陆,是个麻烦事,永动不了啊!!!

 msgId唯一!

微信接口文档里边说的很清楚,5s内未回复,微信服务器重新发起请求,一共三次。注意,微信为了保证幂等,请求过来的msgId是一致的。这个时候,我们就可以存储第一次过来的请求消息ID,然后异步执行耗时任务把结果和请求消息ID映射,第二次和第三次就可以去尝试去取映射的结果。这种方法最高可将消息响应提升至14s左右。

总结

接口响应时间太长了,提升至14s左右也没辙,所以放弃。

大佬们有什么解决方案吗?

记录一下开发历程心得。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值