第1章 微信公众平台应用基础 1
1.1 微信公众平台和公众号 2
1.1.1 订阅号 2
1.1.2 服务号 2
1.1.3 企业号 2
1.1.4 订阅号、服务号和企业号的主要区别 2
1.2 注册微信公众号 3
1.3 配置和使用微信公众号 12
1.3.1 登录微信公众平台 12
1.3.2 设置微信公众平台 13
1.3.3 管理设置 14
1.3.4 功能设置 17
1.4 微信公众平台的开发模式和开发流程 25
1.4.1 Web应用程序的开发模式 25
1.4.2 Web应用程序的基本开发流程 27
1.4.3 微信公众平台的前端开发模式 29
1.4.4 微信公众平台的后端开发模式 29
1.4.5 开发者与微信公众平台之间的数据交互方式 30
1.4.6 本书实例的开发模式 31
习题 31
第2章 ASP.NET MVC开发基础 33
2.1 ASP.NET MVC开发模式概述 34
2.1.1 MVC开发模式 34
2.1.2 WebForm和ASP.NET MVC的对比 35
2.2 初识ASP.NET MVC 35
2.2.1 下载Visual Studio Community 2015 35
2.2.2 创建ASP.NET MVC应用程序 35
2.2.3 ASP.NET MVC项目中的文件夹和文件 38
2.3 控制器 39
2.4 设计视图 41
2.4.1 默认的主页视图 41
2.4.2 母版页 42
2.5 控制器与视图的关系 46
2.5.1 创建Action方法对应的视图 46
2.5.2 在浏览器和视图之间传输数据 47
2.6 MVC区域(Areas) 52
2.6.1 创建区域 52
2.6.2 区域中的控制器和视图 52
2.7 设计本书实例项目 55
习题 57
第3章 使用ASP.NET搭建微信公众平台应用程序 59
3.1 部署ASP.NET空间 60
3.1.1 网站空间的类型 60
3.1.2 申请ASP.NET主机空间 60
3.1.3 部署MVC网站 64
3.2 成为微信公众平台的开发者 66
3.2.1 填写服务器配置 66
3.2.2 记录收到的消息 69
3.2.3 验证signature参数 72
3.2.4 申请接口测试号 75
3.3 .NET微信接口开发基础技术 77
3.3.1 开发者与微信公众平台之间的数据交互设计 77
3.3.2 获取access_token 81
3.3.3 从微信公众平台获取数据的实例 84
习题 87
第4章 自定义菜单开发 88
4.1 自定义菜单 89
4.1.1 创建自定义菜单 89
4.1.2 查询自定义菜单 93
4.1.3 删除自定义菜单 93
4.1.4 获取自定义菜单配置 95
4.2 个性化菜单管理 99
4.2.1 创建个性化菜单 100
4.2.2 删除个性化菜单 102
4.2.3 测试个性化菜单四配结果 103
习题 104
第5章 消息接口 106
5.1 接收消息 107
5.1.1 在程序中接收POST数据 107
5.1.2 接收消息的类型 108
5.1.3 解析收到的消息 109
5.1.4 接收文本消息 110
5.1.5 接收图片消息 113
5.1.6 接收语音消息 114
5.1.7 接收视频消息 115
5.1.8 接收地理位置消息 117
5.1.9 接收链接消息 118
5.1.10 接收事件推送消息 120
5.2 发送消息 122
5.2.1 被动回复用户消息 122
5.2.2 消息的加密和解密 129
5.2.3 群发消息 136
5.3 发送模板消息 140
5.3.1 申请开通模板功能 140
5.3.2 管理我的模板 144
5.3.3 所属行业管理 145
5.3.4 模板管理 149
5.3.5 发送模板消息 152
习题 154
第6章 用户管理 157
6.1 用户分组管理 158
6.1.1 查询所有用户分组 158
6.1.2 创建用户分组 160
6.1.3 修改用户分组名 161
6.1.4 删除用户分组 163
6.2 用户管理 163
6.2.1 获取用户列表 164
6.2.2 设置备注名 165
6.2.3 获取用户基本信息 167
6.2.4 查询用户所在分组 173
6.2.5 移动用户到指定分组 174
习题 176
第7章 客服管理 178
7.1 客服账号管理 179
7.1.1 开通客服功能 179
7.1.2 获取客服账号的列表信息 179
7.1.3 添加客服账号 181
7.1.4 修改客服账号 182
7.1.5 删除客服账号 184
7.1.6 设置客服账号的头像 185
7.2 通过客服接口发送消息 187
习题 192
第8章 素材管理 194
8.1 临时素材管理 195
8.1.1 新增临时素材 195
8.1.2 获取临时素材 200
8.2 永久素材管理 202
8.2.1 新增永久素材 202
8.2.2 获取永久素材 209
8.2.3 修改永久图文素材 211
8.2.4 删除永久素材 212
8.3 获取素材汇总信息 214
8.3.1 获取素材总数 214
8.3.2 获取素材列表 215
习题 218
第9章 统计分析 220
9.1 用户分析数据接口 221
9.1.1 获取用户增减数据 221
9.1.2 获取累计用户数据 225
9.2 图文分析数据接口 229
9.2.1 获取图文群发每日数据 229
9.2.2 获取图文群发总数据 231
9.2.3 获取图文统计数据 233
9.2.4 获取图文统计分时数据 235
9.2.5 获取图文分享转发数据 238
9.2.6 获取图文分享转发分时数据 240
9.3 消息分析数据统计接口 242
9.3.1 概述 242
9.3.2 获取消息发送概况数据 242
9.3.3 获取消息发送月数据 245
9.3.4 获取消息发送周数据 247
9.3.5 获取消息发送分时数据 248
9.3.6 获取消息发送分布数据 251
9.3.7 获取消息发送分布月数据 253
9.3.8 获取消息发送分布周数据 255
习题 256
第10章 微信前端开发技术 258
10.1 开发手机网页的基础 259
10.1.1 什么是H5网页 259
10.1.2 自适应设计 259
10.1.3 使用jQuery Mobile开发手机网页 260
10.1.4 开发自适应的H5网页 261
10.2 微信网页开发样式库 262
10.2.1 CSS基础 262
10.2.2 微信网页开发样式库WeUI 269
10.3 微信JS-SDK 282
10.3.1 绑定域名 282
10.3.2 开始使用JS-SDK 282
10.3.3 调用基础接口 289
10.3.4 分享接口 290
10.3.5 图像接口 294
10.3.6 音频接口 297
10.3.7 获取网络状态接口 300
10.3.8 地理位置 301
10.3.9 关闭当前网页窗口接口 302
10.4 微信浏览器私有接口WeixinJSBridge 302
10.4.1 onBridgeReady事件 303
10.4.2 WeixinJSBridge.call()方法 303
10.4.3 WeixinJSBridge.invoke()方法 304
习题 307
第11章 微信门店管理 309
11.1 申请开通门店功能 310
11.2 管理微信门店的开发接口 311
11.2.1 获取门店列表 311
11.2.2 创建门店 316
11.2.3 根据门店id获取门店信息 322
11.2.4 删除门店信息 326
习题 327
第12章 微信支付 329
12.1 概述 330
12.1.1 微信支付的类型 330
12.1.2 开通微信支付 330
12.2 JSAPI支付 332
12.2.1 准备配置参数 333
12.2.2 OAuth 2.0授权 333
12.2.3 发起JSAPI支付 334
12.2.4 调用统一支付开发接口获取预支付订单号 335
12.2.5 生成支付签名字符串 338
12.2.6 支付成功 340
12.2.7 演示JSAPI支付的实例 341
12.3 扫码支付 347
12.3.1 生成直接支付URL 348
12.3.2 生成支付二维码 356
12.3.3 支付成功处理 356
12.3.4 演示扫描支付的实例 357
12.4 发放红包与企业付款 365
12.4.1 微信红包的类型 365
12.4.2 发放红包和企业付款提交数据的格式 365
12.4.3 开发接口 366
12.4.4 返回报文的格式 366
12.4.5 发放红包的实例 367
习题 373