一:微信公共号基础知识

简介

微信公众号是开发者或商家在微信公众平台上申请的应用账号,该帐号与QQ账号互通,通过公众号,商家可在微信平台上实现和特定群体的文字、图片、语音、视频的全方位沟通、互动 。形成了一种主流的线上线下微信互动营销方式。

分类及区别

微信公众号分为订阅号和服务号。
1、订阅号,任何组织和个人都可以申请,每天群发一条信息,认证后有自定义菜单。没有高级接口,不能用开发模式。
2、选择服务号,只面向企业或组织机构申请注册,申请后自带自定义菜单。认证后可以有高级接口,每周群发一条信息。均不可主动添加微信好友。

通讯机制

作为开发者,我们需要面对的主要有两个对象:微信服务器和应用程序(网站)服务器。
当微信用户向你的公众平台发送一条消息,实际上这条消息首先发送到微信服务器,由微信服务器向网站服务器发起另外一个请求,网站服务器返回这个请求的结果,再由微信服务器发送到微信客户端。

整个消息通讯流程如下图:
通讯机制

二:微信公共号环境搭建

服务器准备

  1. 方式一:买的云主机。

  2. 方式二:BAE(注册百度账号,然后登录 百度云开发平台 )。

  3. 方式三:SAE(注册新浪微博,然后登录 新浪云SAE )。

  4. 方式五:可以通过免费映射工具。比如:ngrok ,natapp ,花生壳 ,nginx 等;

由于前面三种方式都是发布到公网的的,出现问题不能在本地调试,需要在本地搭建测试环境,我将使用ngrop工具,使本地搭建的服务器能够外网能够访问,将运行在内网的服务器映射到外网去给微信访问。

ngrop工具使用

首先到官网https://ngrok.com注册并下载ngrok,得到一串授权码
在windows环境下,运行 ngrok -authtoken 你的授权码80,80是你本地Web服务的端口,而之后ngrok会记住你的授权码,直接 http ngrok 80就OK了
每次重启ngrop,ip地址都会变
ngrop
a
b

标红的地方是外网地址映射80端口,本地服务端口必须是80端口

三:微信公共号相关资料

  1. 申请一个微信号(下载微信客户端,手机注册,或是qq注册)

  2. 申请一个微信公众平台接口测试帐号

  3. 申请一个微信公众号

注:github项目地址:微信公共号开发用例