公众号api接口文档 整合微信小程序的Web API接口层的架构设计

2019-03-14 12:38:18 第三方免签接口 65 views 第三方免签接口
[导读]:本文(《整合微信小程序的Web API接口层的架构设计》)由来自青铜峡的读者投稿,并经由本站(免签约支付接口)结合主题:公众号api接口文档,收集整理了众多资料而成。主要记述了webapi,微信小程序,微信应用号,微信api,api,web技术,接口等方面的信息。相信从本文您一定可以获得自己所需要的!

在我前面有很多篇随笔介绍了Web API 接口层的架构设计,以及对微信公众号、企业号、小程序等模块的分类划分。

例如在《C#开发微信门户及应用(43)--微信各个项目模块的定义和相互关系》介绍了相关模块的划分,在《基于微信小程序的系统开发准备工作》介绍了Web API的架构设计思路。

本篇随笔对之前介绍的架构内容进行统一的调整更新,以便更加方便实际项目的应用开发,以期达到统一、重用、清晰的目的。

我们知道,目前微信企业应用,分为公众号、企业号(企业微信)、小程序三种应用模式,对于常规的开发来说,我们对每个模式的应用都分为了两个不同的部分,一个是和业务数据相关的数据管理、一个是和API接口相关的API管理,两者整合为一个完整的应用。

业务数据管理模块,一般还需要调用API接口进行相关的处理操作,因此他们之间的项目引用关系如下所示

图片

另外,这三种类型的API接口也公用了一些业务对象和实体类,因此把它们抽取出来作为公共项目模块,如这三类接口项目统一使用了一个公共实体类项目。

公众号api接口文档 整合微信小程序的Web API接口层的架构设计

除了这些之外,我们做项目,一般还涉及到一些基础功能模块,如公用类库,以及附件管理、通讯录管理、权限管理模块等内容,我们可以把后者几个模块放在一起,组成基础模块。

公众号api接口文档 整合微信小程序的Web API接口层的架构设计

随着基于JSON格式的Web API的广泛应用,越来越多的企业采用Web API接口服务层,作为统一接口的核心所在,也成为Web API核心层。

基于JSON格式的接口,可以广泛地、跨平台的应用于IOS、安卓等移动端,也可以应用在常规的Web业务系统,Winform业务系统、微信应用、微信小程序等方方面面,因此企业内部形成自己是的一套Web API标准和详细的文档非常重要,一旦完善了,就可以供各个业务场景使用,这些业务可以外包给其他软件公司或者团队,各自分离开发,而自己内部则只需要花费精力来统一维护Web API核心层和提高整个核心层的功能接口稳定、缓存处理等方面事情即可。

其他业务团队开发的系统只需要遵循整个大接口平台的统一规划,完成各自的功能需求即可,不会造成数据库的不一致,更不会让某家公司掌握核心的技术资源,尾大不掉的尴尬情形。

基于上面的分析,我们企业最终围绕着Web API核心层做了不同的业务应用,如下图所示。

公众号api接口文档 整合微信小程序的Web API接口层的架构设计

公众号api接口文档 整合微信小程序的Web API接口层的架构设计

再进一步详细各个模块的分层,我们可以细化为下面的架构设计图,所有模块均围绕着Web API 接口层进行扩展,底层的数据存储对上层的应用是完全透明,我们可以根据需要拆分各种业务数据库,以及使用我们认为合适的数据库。

公众号api接口文档 整合微信小程序的Web API接口层的架构设计

其中我们在Web API接口层上还看到一个微信消息交互的模块,这个模块我们为了方便域名端口的处理,和Web API 是统一放在一起的,它负责和腾讯微信服务器进行消息的交互处理,从而实现各种消息推送处理。

微信的服务器架起了客户手机和开发者服务器的一个桥梁,通过消息的传递和响应,实现了与用户的交互操作,下面是它的消息流程图。

公众号api接口文档 整合微信小程序的Web API接口层的架构设计

通过对这几类业务应用的模块分析,我们就可以建立相关的项目了,来分别对这些数据和API进行管理,如我们根据这些分类,在Visual Studio的项目管理中看到的项目如下所示。

公众号api接口文档 整合微信小程序的Web API接口层的架构设计

其中由于我们这里的Web API 是一个统一的出口,因此会整合很多Web API控制器,以提供所有业务的接口,因此对Web API 控制器的管理就显得很重要,这里建议引入Area区域进行管理控制器类,这种各个模块就能够很好分门别类的进行管理了。

如下图所示是我们的Web API项目的控制器Area区域分类,把微信公众号、企业号、小程序、基础框架、第三方接口、CRM等内容进行不同的划分。

拓展阅读

2018微信最新手机版本 - 标签 - ZNDS智能电视网:https://www.znds.com/plugin.php?id=onexin_tags&tagid=933810&type=thread

【微信电脑版下载】2019年最新官方正式版微信电脑...:https://pc.qq.com/detail/8/detail_11488.html

微信公众平台:https://baike.baidu.com/item/%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%B9%B3%E5%8F%B0/1488140?fr=aladdin

如何申请微信公众号:https://baijiahao.baidu.com/s?id=1608925111063039918&wfr=spider&for=pc

微信公众平台登录官网:https://zhidao.baidu.com/question/458167307971651405.html

如何申请2018最新微信公众号:https://jingyan.baidu.com/article/afd8f4dea4e60d34e286e99d.html

如何开通注册微信公众号:https://jingyan.baidu.com/article/2c8c281d90d2700009252a5c.html

新京报的微信公众账号!关注订阅号:新京报:http://www.tuixinwang.cn/gongzhonghao/71138.html

微信公众号可以在手机上登录吗?:https://zhidao.baidu.com/question/878591872683406092.html

2016最新微信公众号平台开发文档API:https://download.csdn.net/download/huangwei830908/10151182

相关问答

问:微信公众号API接口数据调用方法?

答:API:应用程序接口(API:Application Program Interface)
应用程序接口(API:application programming interface)是一组定义、程序及协议的集合,通过 API 接口实现计算机软件之间的相互通信。API 的一个主要功能是提供通用功能集。程序员通过使用 API 函数开发应用程序,从而可以避免编写无用程序,以减轻编程任务。
远程过程调用(RPC):通过作用在共享数据缓存器上的过程(或任务)实现程序间的通信。
标准查询语言(SQL):是标准的访问数据的查询语言,通过通用数据库实现应用程序间的数据共享。
文件传输:文件传输通过发送格式化文件实现应用程序间数据共享。
信息交付:指松耦合或紧耦合应用程序间的小型格式化信息,通过程序间的直接通信实现数据共享。
当前应用于 API 的标准包括 ANSI 标准 SQL API。另外还有一些应用于其它类型的标准尚在制定之中。A


问:微信公众号开发接口 有没有给指定的账号发送信息呢?

答:为了避免骚扰事件,微信公众平台特别做了设置,只有当对方主动与你互动48小时内,你可以跟对方进行主动推送信息。
或者你可以将那些人先分组,然后群发给他们信息。
其他的方式都有被封号的可能,强烈建议不要使用!


问:微信有什么办法能看到所有公众号的api

答:那只有调用接口才行的。如果一个一个去抓包就很恼火的。


问:微信订阅号有群发的api接口吗

答:在公众平台网站上,为订阅号提供了每天一条的群发权限,为服务号提供每月(自然月)4条的群发权限。而对于某些具备开发能力的公众号运营者,可以通过高级群发接口,实现更灵活的群发能力。
1、该接口暂时仅提供给已微信认证的服务号
2、虽然开发者使用高级群发接口的每日调用限制为100次,但是用户每月只能接收4条,请小心测试
3、无论在公众平台网站上,还是使用接口群发,用户每月只能接收4条群发消息,多于4条的群发将对该用户发送失败。
4、具备微信支付权限的公众号,在使用高级群发接口上传、群发图文消息类型时,可使用<a>标签加入外链


发表评论

勿忘初心

微信上看不了 只能登陆公众号后台才能看

2019-03-19 10:19:32
阿童木

微信公众平台-编辑模式和开发模式,都可以针对某一个人或者是一个组发相应的信息。(这种消息也是以群发消息的途径,但是只发送给指定的人群)

2019-03-14 21:21:41

发表评论:

在线客服