第1章 微信公众平台入门 1
1.1 微信公众平台简介 2
1.2 微信公众号类型 2
1.2.1 订阅号特点 2
1.2.2 服务号特点 3
1.2.3 微信公众号不同类型的区别 3
1.3 微信公众号注册 5
1.3.1 注册微信公众号基本信息 5
1.3.2 邮箱激活微信公众号 6
1.3.3 登记微信公众号信息 7
1.3.4 选择微信公众号类型 11
1.3.5 填写微信公众号信息 12
1.4 微信认证 13
1.4.1 微信认证优势 14
1.4.2 微信认证流程 15
1.4.3 微信认证结果 18
1.5 功能插件简介 19
1.5.1 多客服 19
1.5.2 微信支付 23
1.5.3 微信小店 27
第2章 微信公众平台开发准备 35
2.1 成为微信公众平台开发者 35
2.2 微信公众平台接口测试账号申请 38
第3章 实现URL接入 43
3.1 接口校验方法 43
3.2 实现接口校验程序 45
3.3 本地测试 48
3.4 使用AppHarbor的部署接口校验程序 49
3.5 接入微信公众平台 56
第4章 微信公众平台消息处理框架 57
4.1 消息交互基础 57
4.1.1 消息交互流程 58
4.1.2 消息数据结构 58
4.1.3 用户发送消息数据实体 60
4.1.4 用户发送事件消息数据实体 64
4.1.5 公众号回复消息数据实体 68
4.1.6 消息数据转换 73
4.2 用户会话上下文框架 85
4.2.1 用户会话上下文应用场景 85
4.2.2 用户会话上下文结构 86
4.2.3 发送与接收消息记录 86
4.2.4 用户会话上下文信息 88
4.2.5 用户会话上下文集合 91
4.3 消息处理 98
4.3.1 消息处理完整流程 98
4.3.2 实现消息处理 100
4.4 消息处理框架的完整结构 112
4.5 消息处理框架使用示例 113
4.5.1 消息处理框架示例程序 114
4.5.2 在AppHarbor部署示例程序 125
4.5.3 示例程序运行结果 126
第5章 微信公众平台接口开发框架 129
5.1 微信公众平台接口基础 129
5.1.1 高级接口交互流程 130
5.1.2 实现HTTPS请求 131
5.1.3 封装接口访问方法 133
5.2 获取接口访问凭证 138
5.3 自定义菜单接口 143
5.3.1 自定义菜单简介 143
5.3.2 自定义菜单数据结构 144
5.3.3 自定义菜单数据实体 145
5.3.4 自定义菜单接口封装 149
5.4 多媒体文件接口 155
5.4.1 多媒体文件接口简介 155
5.4.2 上传下载文件 157
5.4.3 多媒体文件接口封装 160
5.5 用户管理接口 163
5.5.1 用户信息接口简介 164
5.5.2 用户信息接口封装 166
5.5.3 用户分组接口简介 169
5.5.4 用户分组接口封装 172
5.6 客服接口 176
5.6.1 客服接口简介 176
5.6.2 客服接口封装 181
5.7 生成带参数的二维码接口 185
5.7.1 带参数二维码接口简介 185
5.7.2 带参数二维码接口封装 187
5.8 网页授权接口 189
5.8.1 网页授权接口简介 189
5.8.2 网页授权接口封装 194
第6章 商用案例1——预约系统 200
6.1 预约系统需求 200
6.2 预约系统功能及设计 201
6.2.1 预约系统功能 201
6.2.2 不定字段数目的数据库表和数据结构设计 202
6.2.3 数据表设计 204
6.3 预约系统架构实现 206
6.3.1 商用系统三层架构简述 206
6.3.2 预约系统三层架构搭建 208
6.3.3 实现数据访问框架 208
6.3.4 实现数据访问层 210
6.3.5 实现视图实体层 218
6.3.6 实现业务逻辑层 223
6.4 预约系统实现 226
6.4.1 预约系统后台实现 226
6.4.2 预约系统前台实现 231
6.5 部署及测试体验 234
第7章 商用案例2——阅读、分享统计 236
7.1 阅读、分享统计的意义 236
7.2 获取分享记录 237
7.2.1 微信JS接口简介 237
7.2.2 使用微信JS接口获取分享记录 238
7.3 获取访问来源 241
7.4 识别访问者与分享者 243
7.4.1 识别访问者 243
7.4.2 识别分享者 244
7.4.3 实现识别访问者与分享者 245
7.5 阅读、分享统计实现 250
7.5.1 内存数据库实现数据存取 250
7.5.2 实现阅读、分享数据记录 254
7.5.3 实现阅读、分享统计 260
7.6 部署及测试体验 269
第8章 商用案例3——推广渠道管理系统 271
8.1 微信公众号推广综述 271
8.2 推广渠道管理系统功能及设计 273
8.2.1 推广渠道管理系统需求 273
8.2.2 推广渠道管理系统功能 274
8.2.3 数据表设计 275
8.3 推广渠道管理系统实现 277
8.3.1 实现数据访问层 278
8.3.2 实现视图实体层 281
8.3.3 同步微信个人用户信息 288
8.3.4 实现业务逻辑层 294
8.3.5 推广渠道管理系统后台实现 301
8.4 部署及测试体验 318