【一】微信服务器在五秒内收不到响应会发生什么?


在微信公众平台开发者文档发送被动响应消息的说明里,有如下陈述:

1,微信服务器在五秒内收不到响应会断掉连接,并且重新发起请求,总共重试三次。
2,假如服务器无法保证在五秒内处理并回复,可以直接回复空串,微信服务器不会对此作任何处理,并且不会发起重试。

鱼渔对此进行了测试,针对第一点,结果如下:

    一般情况下,五秒内收不到响应,第一次重试请求在5秒后即刻发出,如果五秒内还收不到响应,第二次重试在第一次重试请求15秒后发出,如果五秒内还收不到响应,第三次重试在第二次重试请求15秒后发出,总共三次。
    鱼渔在测试过程中,第一次出现了4次重试,第4次重试和第3次重试的间隔只有2秒多,但是后续测试都是3次重试。
    有一次是微信服务器没有发送任何消息到我的服务器,也许是微信发现总是有超时请求,暂时停止发送请求。不过这是一度性的,几分钟后测试就正常了。
    如果响应时间在4秒到5秒之间的临界区域,微信服务器会发出空的重试,就是请求实体为空,有图为证:



    有请求实体的是这样的:



    注意上图中的reply信息延时了12秒,超过了5秒,微信已经断开了链接,微信是收不到的这个reply的,这个只是鱼渔做了个log,记录下了返回的reply信息。


针对第二点,测试结果和官方说明吻合,并且后续48小时内,可以通过高级客户接口,异步回复消息给会话发起者。应该是微信服务器内部记录了发起者的事件和时间,并以次为依据,判断是否接受异步推送的客服消息。

-----------------------------------------------------------------------------------------------------------------------------------------
欢迎转载,但请注明来自鱼渔解读微信公众平台开发(http://www.cnblogs.com/yidongapi/p/3617877.html),谢谢!

欢迎关注鱼渔微信公众帐号:yidongapi,接收我的最新博客发布消息,欢迎访问我的个人网站:鱼渔微信



免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM