第1章 微信公众平台介绍 1
1.1微信及其平台 1
1.2微信公众账号注册 2
1.2.1注册公众账号 2
1.2.2注册测试号 5
1.3微信公众平台的使用 7
1.3.1功能 7
1.3.2微信支付 10
1.3.3管理 10
1.3.4推广 13
1.3.5统计 13
1.3.6设置 14
1.3.7开发者中心 16
1.4本章小结 16
第2章 本地开发环境搭建及程序开发基础 17
2.1本地开发环境的搭建 17
2.1.1 WampServer的安装 17
2.1.2其他开发环境套件 19
2.2程序开发基础 21
2.2.1 PHP语法及使用 21
2.2.2 MySQL的使用 28
2.2.3其他常用语言 30
2.3本章小结 33
第3章 服务器资源与消息交互原理 34
3.1服务器资源 34
3.1.1新浪云SAE 34
3.1.2其他服务器资源 40
3.2开发工具 41
3.3微信开发者中心 41
3.3.1配置和启用服务器 41
3.3.2配置失败常见问题与分析 43
3.3.3自动回复当前时间 44
3.3.4消息交互原理分析 45
3.3.5.消息体加/解密实现 48
3.4微信开发调试工具 54
3.4.1微信调试器 54
3.4.2接口调试工具 55
3.5本章小结 57
第4章 接收消息与发送消息 58
4.1接收普通消息 58
4.1.1文本消息 58
4.1.2图片消息 58
4.1.3语音消息 59
4.1.4视频消息 60
4.1.5地理位置消息 61
4.1.6链接消息 62
4.2发送被动回复消息 62
4.2.1文本消息 63
4.2.2图片消息 63
4.2.3语音消息 64
4.2.4视频消息 65
4.2.5音乐消息 66
4.2.6图文消息 66
4.3接收事件推送消息 69
4.4案例实践 70
4.4.1微信基础消息SDK 70
4.4.2调用API实现图文天气预报 77
4.4.3查询数据库回复笑话 82
4.5本章小结 84
第5章Access Token和自定义菜单 85
5.1 Access Token 85
5.1.1 Access Token介绍 85
5.1.2接口调用请求说明 85
5.1.3实现代码 86
5.2自定义菜单 86
5.2.1自定义菜单介绍 87
5.2.2按钮类型 87
5.2.3创建菜单 88
5.2.4个性化菜单 91
5.2.5查询菜单 92
5.2.6删除菜单 93
5.2.7菜单事件推送 94
5.3案例实践 98
5.3.1自动缓存与更新Access Token 98
5.3.2扫描快递条码查询快递进度 100
5.4本章小结 102
第6章 用户信息与用户管理 103
6.1用户标签管理 103
6.1.1创建标签 103
6.1.2查询所有标签 104
6.1.3修改标签名 106
6.1.4给用户打标签 107
6.1.5获取用户标签列表 108
6.2用户备注 109
6.3用户地理位置 110
6.3.1获取用户地理位置 110
6.3.2转换坐标到地址 111
6.4用户列表 113
6.4.1获取用户列表 113
6.4.2分批获取 114
6.5获取用户基本信息 116
6.6案例实践 118
6.6.1个性化欢迎语 118
6.6.2同步所有用户信息 120
6.7本章小结 124
第7章 网页授权与网页应用开发 125
7.1 OAuth2.0网页授权 125
7.1.1 OAuth2.0 125
7.1.2授权过程 125
7.1.3详细步骤 126
7.2 WeUI 131
7.3案例实践 141
7.3.1网页授权获取个人信息 141
7.3.2网页判断用户是否关注 144
7.3.3二次授权多个域名 145
7.4本章小结 146
第8章 参数二维码与来源统计 147
8.1参数二维码 147
8.1.1创建二维码ticket 147
8.1.2通过URL生成二维码图片 149
8.1.3通过ticket换取二维码 150
8.1.4下载二维码 151
8.1.5扫描带参数二维码事件 152
8.2案例实践 153
8.3本章小结 158
第9章 客服接口与群发接口 159
9.1客服接口 159
9.2群发接口 169
9.2.1上传图文消息内的图片 169
9.2.2上传缩略图 170
9.2.3上传图文消息素材 171
9.2.4预览群发内容 172
9.2.5根据标签进行群发 173
9.2.6根据OpenID列表进行群发 174
9.2.7删除群发 175
9.2.8查询群发消息发送状态 176
9.2.9接收群发结果 177
9.3案例实践 177
9.3.1一次回复多条消息 177
9.3.2服务号每日群发 178
9.4本章小结 182
第10章 微信小店和模板消息 183
10.1微信小店的搭建 183
10.1.1微信小店概况 183
10.1.2运费模板管理 183
10.1.3商品分组管理 184
10.1.4图片库 185
10.1.5添加商品 187
10.1.6货架管理 188
10.2微信小店的二次开发 190
10.2.1微信小店SDK 190
10.2.2订单付款通知 193
10.2.3订单查询 196
10.2.4微信快递查询 201
10.2.5模板消息提醒 201
10.3本章小结 204
第11章 客服管理 205
11.1消息转发 205
11.1.1消息转发到客服 205
11.1.2消息转发到指定客服 205
11.2客服管理 206
11.2.1获取客服列表 206
11.2.2获取在线客服列表 207
11.2.3添加客服账号 208
11.2.4邀请绑定客服账号 208
11.2.5设置客服信息 209
11.2.6上传客服头像 209
11.2.7删除客服账号 210
11.3会话控制 210
11.3.1创建会话 210
11.3.2关闭会话 211
11.3.3获取客户会话状态 211
11.3.4获取客服会话列表 212
11.3.5获取未接入会话列表 212
11.4获取聊天记录 213
11.5本章小结 214
第12章 素材管理 215
12.1新增临时素材 215
12.2获取临时素材 216
12.3新增永久素材 216
12.3.1新增永久图文素材 216
12.3.2新增其他类型的永久素材 217
12.4获取永久素材 218
12.5删除永久素材 218
12.6修改永久图文素材 219
12.7获取素材总数 220
12.8获取素材列表 220
12.9本章小结 222
第13章 数据统计 223
13.1用户分析数据接口 223
13.2图文分析数据接口 224
13.3消息分析数据接口 229
13.4接口分析数据接口 231
13.5本章小结 233
第14章 微信JS-SDK 234
14.1 JS-SDK 234
14.1.1 JS API Ticket 234
14.1.2 JS-SDK签名 234
14.1.3卡券Ticket 235
14.1.4 SDK实现 236
14.2 JS-SDK的使用 239
14.3接口列表 240
14.4案例实践 247
14.4.1分享到朋友圈后查看内容 247
14.4.2获取用户坐标及地址 249
14.5本章小结 250
第15章 微信门店 251
15.1门店管理 251
15.1.1创建门店 251
15.1.2审核事件推送 252
15.1.3查询门店信息 253
15.1.4查询门店列表 255
15.1.5修改门店服务信息 257
15.1.6删除门店 258
15.1.7门店类目表 258
15.2案例实践:获取门店ID列表 259
15.3本章小结 260
第16章 微信卡券与会员卡 261
16.1创建卡券 261
16.1.1上传卡券Logo 261
16.1.2卡券颜色 261
16.1.3卡券的创建 262
16.2投放卡券 268
16.2.1创建二维码投放 268
16.2.2创建货架投放 269
16.2.3群发投放 271
16.3卡券核销 272
16.3.1查询Code 272
16.3.2核销Code 273
16.4卡券统计 274
16.4.1获取卡券概况数据 274
16.4.2获取免费券数据 275
16.5会员卡 276
16.5.1创建会员卡 276
16.5.2激活会员卡 279
16.5.3更新会员信息 280
16.6朋友的券 282
16.7特殊票券 283
16.7.1会议/演出门票 283
16.7.2飞机票 285
16.7.3电影票 287
16.7.4景区门票 289
16.8案例实践 290
16.8.1 HTML5网页中领取卡券 290
16.8.2创建会议门票 292
16.9本章小结 295
第17章 微信支付与微信红包 296
17.1微信支付基础 296
17.1.1申请微信支付 296
17.1.2配置微信支付 299
17.1.3设置API密钥 300
17.1.4微信支付基础类 300
17.2公众号支付 310
17.3扫码支付 315
17.3.1模式一:静态链接 315
17.3.2模式二:动态链接 318
17.4刷卡支付 321
17.5 H5支付 325
17.6微信红包 327
17.6.1普通红包 327
17.6.2裂变红包 332
17.7企业付款 336
17.8代金券 338
17.9微信报关 340
17.10订单查询 342
17.11退款申请 345
17.12退款查询 349
17.13下载对账单 352
17.14本章小结 354
第18章 微信连WiFi 355
18.1 WiFi门店管理 355
18.1.1获取WiFi门店列表 355
18.1.2查询门店WiFi信息 357
18.2密码型设备配置 358
18.2.1添加密码型设备 359
18.2.2获取物料二维码 360
18.3 Portal型设备开发 361
18.3.1添加Portal型设备 361
18.3.2 AC/AP设备改造 362
18.3.3 Portal页面开发 363
18.4 WiFi关联设置 368
18.4.1设置商家主页 368
18.4.2设置首页欢迎语 369
18.4.3设置联网完成页 369
18.4.4设置门店卡券投放 370
18.5 WiFi效果监控 371
18.5.1设备查询 371
18.5.2数据统计查询 372
18.6本章小结 373
第19章 微信摇一摇周边 374
19.1设备管理 374
19.1.1添加设备 374
19.1.2配置设备 376
19.1.3激活设备 378
19.1.4查询设备 379
19.2设备分组 381
19.2.1添加分组 381
19.2.2编辑分组信息 382
19.2.3删除分组 382
19.2.4查询分组列表 383
19.2.5查询分组详情 384
19.2.6添加设备到分组 385
19.2.7从分组中移除设备 386
19.3页面管理 387
19.3.1添加模板页面 387
19.3.2编辑页面 389
19.3.3查询页面 390
19.3.4删除页面 393
19.4周边业务开发 394
19.4.1 Ticket 394
19.4.2摇一摇事件通知 394
19.4.3摇一摇关注 395
19.4.4获取设备及用户信息 396
19.5关联设备和页面 397
19.5.1配置关联关系 397
19.5.2查询关联关系 399
19.6数据统计 401
19.6.1查询设备统计数据 401
19.6.2批量查询设备统计数据 402
19.6.3查询页面统计数据 403
19.6.4批量查询页面统计数据 404
19.7案例实践:会议签到及室内定位 405
19.8本章小结 407
第20章 微信企业号和企业微信 408
20.1企业号开发基础 408
20.1.1启用回调模式 408
20.1.2使用回调模式 410
20.1.3管理组 414
20.1.4 Access Token 415
20.2部门管理 415
20.2.1创建部门 415
20.2.2更新部门 416
20.2.3删除部门 417
20.2.4获取部门列表 417
20.3成员管理 418
20.3.1创建成员 418
20.3.2更新成员 419
20.3.3删除成员 420
20.3.4获取成员 421
20.3.5获取部门成员详情 422
20.4应用管理 423
20.4.1获取应用 423
20.4.2设置应用 425
20.5自定义菜单 426
20.5.1创建菜单 426
20.5.2获取菜单列表 428
20.6素材管理 428
20.6.1上传临时素材 428
20.6.2获取临时素材 429
20.6.3上传永久素材 429
20.6.4获取永久素材 431
20.6.5删除永久素材 431
20.6.6修改永久图文素材 432
20.6.7获取素材列表 433
20.7收发消息 434
20.7.1接收普通消息 434
20.7.2接收事件 437
20.7.3被动回复消息 439
20.7.4主动发送消息 440
20.8企业号客服服务 444
20.8.1设置客服类型 444
20.8.2向客服发送消息 446
20.8.3客服回复消息回调 448
20.9网页开发 451
20.9.1企业号网页授权 451
20.9.2企业号JS-SDK 454
20.10本章小结 455
第21章 微信小程序 456
21.1开发入门 456
21.1.1 AppID 456
21.1.2创建项目 456
21.1.3编写代码 458
21.1.4手机预览 461
21.2框架 462
21.2.1文件结构 462
21.2.2配置 462
21.2.3逻辑层 464
21.2.4视图层 467
21.3组件 468
21.3.1视图容器 468
21.3.2基础内容 470
21.3.3表单组件 471
21.3.4导航 478
21.3.5媒体组件 479
21.3.6地图 481
21.3.7画布 481
21.4接口 482
21.4.1网络 482
21.4.2媒体 483
21.4.3数据 483
21.4.4位置 484
21.4.5设备 484
21.4.6界面 484
21.4.7开放接口 485
21.5案例实践:天气预报 488
21.6本章小结 492
第22章 微信开放平台 493
22.1移动应用 493
22.1.1微信登录 493
22.1.2 APP支付 497
22.2网站应用 499
22.3公众号 503
22.4 UnionID 504
22.5公众号第三方平台 505
22.5.1消息加解密 507
22.5.2公众号授权第三方平台 509
22.5.3全网发布接入检测 518
22.6智能接口 522
22.7本章小结 523
第23章 微信开发实用技巧 524
23.1表情雨飘落效果 524
23.2 QQ表情和Emoji表情 525
23.3获取微信版本及手机系统 529
23.4兴趣部落 531
23.5公众号一键关注 531
23.6本章小结 534
第24章 微信常用功能开发实现 535
24.1基本文本消息的聊天机器人 535
24.1.1 API接口 535
24.1.2自动聊天开发实现 536
24.2基于图片消息的人脸识别 538
24.2.1人脸识别接口 538
24.2.2夫妻相实现方案 540
24.2.3代码实现 544
24.3基于位置消息的地图导航 547
24.3.1地图线路规划接口 547
24.3.2开发实现 548
24.4基于表单提交的预约订单 549
24.4.1前端设计与实现 550
24.4.2表单提交开发实现 553
24.5基于Ajax交互的大转盘 557
24.5.1数据库设计 557
24.5.2网页授权防作弊 561
24.5.3用户信息收集 562
24.5.4前端页面实现 564
24.5.5 Ajax提交与转盘控制 566
24.5.6中奖算法实现 570
24.5.7中奖记录查询 573
24.6基于HTML5的微网站开发 573
24.6.1首页布局与设计 573
24.6.2图片滑动特效实现 577
24.6.3栏目页设计与实现 579
24.6.4内容页设计与实现 580
24.7本章小结 582
第25章 基于ThinkPHP 5的微信用户管理系统 583
25.1 ThinkPHP 5 583
25.1.1 ThinkPHP 5介绍与下载 583
25.1.2目录结构 584
25.1.3常用概念 585
25.2系统设计 587
25.2.1模块设计 587
25.2.2数据库设计 588
25.2.3系统配置 589
25.3登录模块 591
25.3.1身份验证 591
25.3.2验证码 593
25.3.3系统信息查看 593
25.4接口模块 594
25.4.1微信消息接口实现 594
25.4.2微信API接口实现 598
25.5用户管理 601
25.5.1同步用户关注列表 601
25.5.2同步用户基本信息 601
25.5.3关注时更新用户 602
25.5.4用户信息列表展示 603
25.5.5用户信息统计分析 605
25.6群发实现 606
25.6.1更新互动记录 606
25.6.2群发通知实现 607
25.7本章小结 609