主机参考:VPS测评参考推荐/专注分享VPS服务器优惠信息!若您是商家可以在本站进行投稿,查看详情!此外我们还提供软文收录、PayPal代付、广告赞助等服务,查看详情! |
我们发布的部分优惠活动文章可能存在时效性,购买时建议在本站搜索商家名称可查看相关文章充分了解该商家!若非中文页面可使用Edge浏览器同步翻译!PayPal代付/收录合作 |
这次,我们将向您展示如何使用KOA2为微信构建第三方公共平台。 使用KOA2建立微信的第三方公共平台的预防措施是什么?以下是一个实际情况。让我们看看。
在写作之前,我想谈谈koa。 KOA在执行过程和组件方面比Express好得多。 KOA本身并不提供太多的扩展名和组件,但是它可以方便地组织和扩展,使其可玩。您可以像其他语言一样考虑并行运行代码。 当Promise发布繁琐的回调时,KOA可以编写Web应用程序,并且在结合不同的生成器时,消除了嵌套重复繁琐的回调功能,从而大大提高了错误处理的效率。 KOA不绑定内核方法中间件。它仅提供轻巧,优雅的功能库,使创建Web应用程序变得易于使用。 Nodejs的天然异步处理过程使其非常适合频繁的消息交互,例如微信公共帐户。此外,可以说,PM2的多进程管理已经显着达到了大规模消息传输的相互作用内的红色信封游戏。
使用KOA2构建第三方公共平台时,要解决的第一件事是将微信返回XML流并将相应的XML身体返回给微信。 KOA本身不是一个框架,因此,由于Internet上的大量中间件,我们创建了一个与Express类似的框架。该框架已经是开源的。有关更多信息,请访问git地址:https://github.com/yxz1025/koa - lana。所有微信消息将在此框架中发送并发送。自己下载!
好吧,让我们首先看一下如何获取由微信返回的XML流:
====== //拦截了由微信返回的xml流文件conde = require = require('bluebird');ISE(函数(resolve,incureject){req.on('data',函数(块){ ('../ common/parsemessage'); const config('../配置'); component_config.component_appid);/wechat/100234/callbackrouter.post(= ctx.req; POST_DATA =等待Tool.convertPost(req); xml = parsemessage(post_data);签名= crypto.getSignature(ctx.query.timestamp,ctx.query.nonce,xml.encrypt); if(ctx.query.msg_signature!=签名){ctx.body ='auth失败! '; //当指纹代码不匹配时,返回错误消息,以防止接受后续消息和发送。消息= middleware.decryptxml(xml); appid = ctx.params.appid。 message.appid = appid; //消息Queuing Switch(message.msgtype){case'text':// test if(messages.tousername == gh_3c884a361561){if(message.content === testcomponent_msg_msg_msg_type_text) content.content;e.customsend(message.fromusername,code_li [1]);后退;关键字= balidator.trim(message.content).tolowercase();令Mement_Config =等待中间件.getMemberConfig(message.tousername,keywords); if(!member_config){等待中间件.sendmnsquene(message);返回ctx.body =成功} else {// susterluce masseflely message.packetsid = parseint(Member_config.hongbaoid); message.keywords =关键字;等待中间件.sendmnsquene(消息)。 令data = {title:member_config.news_title || “单击我获取红色信封”,描述:成员_config.description || “红信封上的第一轮雨已经开始,手很快,手很慢! {fromusername:message.fromusername,tousname:message.tousername,关键字:关键字,appid key = json.stringify(key);ey = aes.base64_encode(key); //获取认证域名auth_url = auth_url =等待中间件.packetdomain(); data.url = http:// appid。 + auth_url + /redpackets /koulin? key = + key;让News = Middleware.news(消息,[data]);回复= midderware.encryptxml(news); ctx.body =回复;后退;破产情况“事件”:等待中间件。Sendmnsquene(消息)。 // test-specific if(message.tousername == gh_3c884a361561){让text = middleware.text(message.event + from_callback let_callback let _erprack = middleware.endware.endware.endware.endware.endware.endware.endware; ctx.body)路由器;
请注意其他相关文章,以获取更多令人兴奋的内容。
这几篇文章你可能也喜欢:
本文由主机参考刊发,转载请注明:如何使用KOA2为微信构建第三方公共平台 https://zhujicankao.com/147489.html
评论前必须登录!
注册