如何设置微信公众号的被动回复

如题所述

您好!很高兴能为您解答,                处理get请求是为了让微信服务器和公众号服务器接头,说白了就是对暗号的过程。微信服务器发过来一个“天王盖地虎”,我们的公众号服务器回一个“宝塔镇河妖”,那肯定是不行的。完成这个过程要借助别人都不知道的token,如果请求中发过来的signature经过验证是有效的,就把echostr还给它,如果无效,就回它“认错人了吧!”。那如何正确的设置微信公众号的被动回复,接下来南昌微信开发公司--百恒网络来详细讲解。
处理post请求是为了回应用户发过来的消息或触发的事件,让用户能跟我们的公众号服务器愉快地玩耍。但因为这些消息和事件是放在xml里发过来的,而且响应的时候也要用xml格式封装好,所以除了业务逻辑,还要处理xml的解析和封装。
说到xml解析,因为有express-xml-bodyparser这样的middleware存在,并且这个轮子也不在我们的学习范围里,就拿过来直接用了。
除此之外,既然只有第二项的业务逻辑部分是不同的,那其他的部分我们就可以像webchat一样,搞一个共用的库。而我们对这个库的要求也很简单:
能验证signature
能提供json格式的消息给我们
能把json格式的返回消息封装成xml
而这个库的用法,我们希望是:
在get请求处理函数中把验证signature需要的数据给它,让它告诉我们true还是false
在post请求处理函数中把消息或事件给它,让它把要返回的xml数据给我们
它在处理消息或事件时,能调用我们提供的消息或事件处理函数,给我们json格式的消息,接收我们函数返回的json结果
综合上面这两种考虑,用ES 6的类实现模板方法模式。因为这个类干的是为微信服务器提供服务的工作,决定管它叫Waiter。我们的Waiter类有三个方法:
verifySignature:验证signature
process:处理接收到的消息,调用业务逻辑,将返回结果封装成xml返回
populateReply:由process调用,子类要实现的业务逻辑就放在这里
温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-02-10

设置自动回复的详细教程

相似回答