微信平台的模拟实现(1)---分析实现

前些日子在家突然想看看微信公众号的开发,看了它的通讯机智后发现可以试着模拟出这样一个平台。

微信公众平台的通讯机制:

由此可以看出公众号的实现需要三大部分:客户端(用户部分,也就是微信客户端)  服务端   公众号(实际为动态网页)。

而这里主要的是服务端和客户端两个部分,它们构成了“平台”,而公众号是不同的公众号持有者自己开发的。

服务端和客户端之间的通讯这里,为了实现即时通讯,我将采用基于 socket 的 tcp 通讯。

(对socket还不了解的,可以百度了解学习一些,这个就不多说了,这里提供一个自己写的例子:基于socket的通讯模型

基本的流程是这样的:

1.客户端发消息送到服务器

2.服务器解析内容

3.服务器通过 get 或 post 到公众号url

4.服务器解析公众号返回的消息

5.服务器将消息发回给客户端

以上看起来步骤多,但实际情况可能会简单一些。

以下是成品演示:

1.公众号发送消息

2.服务器解析内容

3.服务器通过 get 或 post 到公众号url

4.服务器解析公众号返回的消息

(2.3.4步在界面都是在服务器的控制台窗口)

5.最后客户端得到回复

(本文仅对其实现原理进行创建的模拟模型,实际的微信平台没那么简单,本位除了实现微信公众号的模拟,还实现了用户之间的一对一即时通讯,而且还对消息提示做了些加工,内容可能会比较多,比较乱,具体大家可以查看源码,之后会有源码链接)

时间: 2024-08-29 09:43:42

微信平台的模拟实现(1)---分析实现的相关文章

微信平台的模拟实现(2)---客户端开发

上一篇我们简单的分析了微信平台的实现原理,由于博主的表达比较欠缺,说的比较简单,可能看得不是很明白,不过随着一步步进行或者查看源码,大家就会清楚的明白了. 好了,不废话,这一篇我们先来实现客户端. 客户端的灵魂是基于socket实现即时通讯,消息的收发都要通过它. 为了看起累直观明了,我们为这个客户端包装一下,也就是加个界面,让它看起来更像一个客户端. 本文用的是wpf来做的界面,当然也可以以用winform窗体,看个人了. 本客户端主要有以下几个界面: 文件结构如下: 1.登录/注册页面,为了

【玩转微信公众平台之八】 示例代码分析

0.下载安装Opencv,当前版本为249. 1.下载Python,当前OPencv版本为249,不过其支持的最新版本的Python为2.7,所以可以下载276版本. 2.下载numpy,开始我使用了1.6,没有通过,错误如图.下载了最新的1.8.1版本. 3.将Opencv安装目录下opencv\build\python\2.7\x86中的cv2.pyd复制到python安装目录Lib\site-packages下. 4.找到opencv源文件内的draw.py运行. [玩转微信公众平台之八]

【转】微信、陌陌 架构方案分析

来源:http://www.wubiao.info/401 作者:wubiao 微信.陌陌 架构方案分析 近两年.手机应用.莫过于微信.陌陌之类最受欢迎.但实现原理,分享文章甚少. 故,提出两种方案,供分享:不正确之处.敬请留言学习. 目标 解决大型应用(微信.陌陌级别)中.用户经纬度在不断更新.用户查找频繁的问题. (每分钟1000W级) ==============================================================================

还在做代理?不如自己搭建微信平台

我国电子商务面临的问题,淘宝退出百度无疑是一个遗憾.当在网上购物时,用户面临的一个很大的问题就是如何在众多的网站找到自己想要的物品,并以最低的价格买到.自从淘宝退出百度,建立自己的搜索引擎后,广大消费者再也不能再百度里面直接搜索有关淘宝的商品了,这无疑是一个遗憾. 现在又出现了微商城,还没有被太多人所熟知,但是微信营销已经以非常快的速度在吞噬这整个市场,微商城.商家入驻,微门店,微餐饮,微酒店,微教育,微物业,微医疗,微信墙,微花店,微美容,微生活等很多功能,微酷WeiKuCMS网站是多功能微信

微信营销系统(第三方微信平台)github 开源

升讯威微信营销系统(微信第三方平台) 在线体验:http://wxcm.eeipo.cn/开源地址:https://github.com/iccb1013/Sheng.WeixinConstruction说明:有问题上QQ群交流 QQ群:173459027 作者最初的期望是实现一个微信云平台,类似于微盟,只需要商家扫码绑定即可提供整套的营销功能.我的定位是专门服务于线下商家,例如电影院.商业中心.各类线下门店等,线下商家的一些业务场景和业务流程是比较特殊的,和纯现上的公众号运营不尽相同. 这是我

微信平台开发之利用本地环境加新花生壳解释做测试环境

准备工作: 1.搭建本地PHP开发环境. 2.注册并安装新花生壳. 3.注册微信公众平台帐号. 第一步:搭建本地PHP开发环境,案例使用wamp集成环境. 下载并安装集成环境确保集成环境正常运行. 第二步:注册并安装新花生壳,过程(略). 具体教程可查看http://www.oray.com/ 第三步:对开发环境做解释. 登陆花生壳做解释: 开放wamp的外部访问:教程http://hi.baidu.com/aubbll/item/8bd5a52253d3ecd7a517b685 至此,外网就可

沐雪微信平台---企业微信营销专家

上海沐雪网络科技有限公司打造一个专门针对微信公众账号提供营销推广服务的第三方平台-沐雪微信http://uweixin.cn.主要功能是针对微信商家公众号提供与众不同的.有针对性的营销推广服务.通过沐雪微信平台,用户可以轻松管理自己的微信各类信息,对微信公众账号进行维护.开展智能机器人.在线发优惠劵.抽奖.刮奖.派发会员卡.打造微官网.开启微团购等多种活动,对微信营销实现有效监控,极大扩展潜在客户群和实现企业的运营目标.沐雪微信平台很好的弥补了微信公众平台本身功能不足.针对性不强.交互不便利的问

微信平台的开发与集成

最近一直在调用微信的API,却发现一直调用不成功,纠结了好久,各方面找教程,找官方,官方里的文档也只是写得很模糊,说是按三步走. 1.申请App_ID 2.填写包名3. 获取程序签名的md5值, 这三步只要你走对了就能调通,可是大家都不知道有时候我们Eclipse调用的keystore和我们打包的keystore获取到的程序签名的md5是不一样的.而且是每一个keystore对应生成的apk的值都会不一样.我们在申请的时候填的程序签名值是正式打包的,但我们在eclipse部署上去的却是用的我们默

项目需求:基于微信平台的拼团活动系统

项目需求分析 基于微信平台的拼团活动系统 一.业务需求 基于微信平台的拼团系统是一个生活类微信公众平台,解决用户获取厦门城市活动信息问题.同城交友这方面在厦门还比较薄弱,可以通过这个平台增进厦门城市内部的交流,促进大家文娱生活的丰富度.应用前景主要在一下几个方面:1.各类商业活动也可以选择该平台来作为推广和营销的渠道.2.通过该平台找到与自己兴趣相关的活动并参与.活动类型可包括音乐.戏剧.讲座.聚会.电影.展览.活动.公益.旅行等众多内容.一切你热衷的饭局.K歌.球赛都能在上面组织.你可以发起一