
刘运强,网名“柳峰”,资深微信公众平台应用开发工程师,国内微信公众平台应用开发的先驱之一,项目经验丰富。他还是一位资深的Java软件开发工程师和Android/iOS移动应用开发工程师,活跃于CocoaChina、OSChina、CSDN等社区,并在CSDN博客撰写了系列微信公众平台二次开发的教程,深受欢迎并被广泛传播,也因此获得CSDN博客移动开发版块的“博客冠军”。
本书是目前微信公众平台应用开发领域内容最全面、系统和深入的一本书,也是技术版本最新的。由著名的资深微信公众平台应用开发工程师根据最新的微信5.1版撰写,全面解读了微信公众平台开放的所有API的各项功能和用法,系统讲解了微信公众平台应用开发的流程、方法和技巧。更为重要的是,它还深入讲解了微信公众平台应用开发的高级技术和技巧,如何与LBS等多种技术结合使用,如何调用其他第三方的数据和资源,等等。实战性非常强,包含大量小案例和3个有代表性的综合案例。全书共11章,分为四个部分:第一部分(第1~2章)介绍了公众平台的使用、公众账号的认证、编辑模式的使用等基础知识;第二部分(第3~4章)首先讲解了如何启用开发模式,然后详细讲解了公众平台的消息接口(包括请求校验、请求消息、事件推送和响应消息),包含一个能够接收与响应任何类型消息的项目,读者可以将该项目导出成WAR包,作为公众平台的基础开发包(适用于订阅号和服务号),在开发公众账号时,只需要关注业务逻辑;第三部分(第5~6章)重点介绍了公众平台的自定义菜单接口和高级接口,并配有完整的接口调用示例和说明,读者可以将这部分的接口调用代码作为公众平台的高级开发包;第四部分(第7~11章)首先总结了一些实用的公众平台开发技巧,如使用表情、识别微信浏览器、图文消息使用、公众账号无响应处理、服务多个账号等,然后逐步详细地讲解了“周边搜索”、“猜数字”(游戏)和“聊天机器人”3个综合案例的开发过程,其中还包含如何与其他技术的结合使用及如何调用第三方的数据和资源,学习完本部分,读者完全有能力胜任大型企业公众账号的开发。附录为公众平台接口的返回码说明,以及公众平台接口的调用次数限制说明。
前言第1章 公众平台基础知识1.1 公众平台简介1.1.1 平台定位1.1.2 发展历程1.2 注册公众账号1.2.1 公众账号的分类1.2.2 注册账号所需资料1.2.3 公众账号的注册流程1.3 公众平台的使用1.3.1 功能1.3.2 管理1.3.3 服务1.3.4 统计1.3.5 设置1.4 公众账号认证1.4.1 认证条件1.4.2 微信认证流程1.4.3 微博认证流程1.5 小结第2章 编辑模式的使用2.1 编辑模式的应用场景2.2 自动回复2.2.1 被添加自动回复2.2.2 消息自动回复2.2.3 关键词自动回复2.2.4 自动回复优先规则2.3 案例:简易号码簿2.3.1 案例功能描述2.3.2 数据准备2.3.3 设计关注提示语2.3.4 设计关键词规则2.3.5 设置默认回复2.3.6 测试体验2.4 自定义菜单2.4.1 编辑菜单2.4.2 预览和发布菜单2.5 小结第3章 开发模式的启用3.1 开发模式的基础知识3.1.1 启用开发模式的必备条件3.1.2 应用引擎简介3.1.3 开发工具介绍3.2 开发请求校验程序3.2.1 开发者文档介绍3.2.2 明确请求校验流程3.2.3 请求校验流程分析3.2.4 请求校验程序的实现3.2.5 本地测试3.2.6 导出WAR包3.3 BAE的使用3.3.1 注册账号3.3.2 创建应用3.3.3 托管设置3.3.4 部署应用3.3.5 获取访问地址3.4 启用开发模式的步骤3.5 小结第4章 消息的接收与响应4.1 消息交互基础知识4.1.1 消息交互流程4.1.2 消息的分类4.2 消息结构的封装4.2.1 封装请求消息4.2.2 封装事件4.2.3 封装响应消息4.3 消息的处理4.3.1 Dom4j的使用4.3.2 XStream的使用4.3.3 解析请求消息4.3.4 响应消息对象转XML4.4 案例:消息的接收与响应4.4.1 开发准备工作4.4.2 消息封装类4.4.3 封装消息处理工具4.4.4 使用CoreServlet类完成消息的接收与响应4.4.5 使用CoreService类完成消息的处理4.4.6 部署应用及测试体验4.5 小结第5章 自定义菜单的使用5.1 发送HTTPS请求5.1.1 两种解决方法5.1.2 自定义信任管理器5.2 接口访问凭证5.2.1 获取凭证接口介绍5.2.2 获取凭证的方式5.3 自定义菜单接口5.3.1 菜单按钮的分类5.3.2 菜单结构说明5.3.3 封装菜单结构5.3.4 案例:创建菜单5.3.5 菜单的查询与删除5.4 响应菜单点击事件5.5 接口调用频率限制5.6 案例:网址导航5.6.1 案例功能描述5.6.2 案例开发准备5.6.3 封装通用工具类5.6.4 封装菜单工具类5.6.5 创建自定义菜单5.6.6 实现业务逻辑5.6.7 部署应用及测试体验5.7 小结第6章 高级接口的使用6.1 语音识别6.1.1 开启语音识别功能6.1.2 如何获取语音消息6.2 客服接口6.2.1 接口描述6.2.2 方法封装6.2.3 案例:发送客服消息6.3 OAuth2.0网页授权6.3.1 配置网页授权回调域名6.3.2 网页授权流程6.3.3 方法封装6.3.4 案例:通过网页授权获取用户信息6.4 生成带参数二维码6.4.1 创建临时二维码6.4.2 创建永久二维码6.4.3 换取二维码6.4.4 案例:通过ticket换取二维码6.5 获取用户地理位置6.5.1 开启获取用户地理位置功能6.5.2 接收上报地理位置事件6.6 获取用户基本信息6.6.1 接口描述6.6.2 方法封装6.6.3 案例:获取用户基本信息6.7 获取关注者列表6.7.1 接口描述6.7.2 方法封装6.7.3 案例:获取公众账号关注者列表6.8 用户分组接口6.8.1 查询分组6.8.2 创建分组6.8.3 修改分组名6.8.4 移动用户分组6.9 上传及下载多媒体文件6.9.1 上传多媒体文件接口描述6.9.2 使用抓包工具分析文件上传请求6.9.3 上传多媒体文件方法封装6.9.4 下载多媒体文件6.9.5 案例:上传及下载语音文件6.10 小结第7章 网络表情的使用7.1 微信支持的网络表情7.2 QQ表情7.2.1 微信上的QQ表情代码7.2.2 在微信上发送QQ表情7.2.3 QQ表情的识别7.2.4 回复QQ表情7.2.5 案例:原样回复QQ表情7.3 Emoji表情7.3.1 微信上的Emoji表情编码7.3.2 如何使用Emoji表情编码7.3.3 案例:回复Emoji表情7.4 小结第8章 公众平台开发技巧8.1 图文消息使用详解8.1.1 单图文消息的实现8.1.2 多图文消息的实现8.1.3 图文消息使用注意事项8.2 公众账号无响应的处理8.2.1 公众账号无响应的几种情况8.2.2 计算字符串所占字节数8.3 应用开发最佳实践8.3.1 解析消息创建时间8.3.2 换行符的使用8.3.3 网页超链接的使用8.3.4 隐藏浏览器工具栏8.3.5 表情飘落效果8.4 识别微信浏览器8.4.1 判断微信浏览器8.4.2 只允许微信浏览器访问8.5 服务多个公众账号8.5.1 公众账号托管平台原理8.5.2 案例:服务两个公众账号8.6 业务系统对接8.6.1 短信方式绑定账号8.6.2 网页方式绑定账号8.7 公众平台开发测试8.8 小结第9章 LBS应用开发实战:周边搜索9.1 “周边搜索”功能及设计9.1.1 使用方法9.1.2 功能演示9.1.3 需求分析9.1.4 数据表设计9.2 百度地图API的使用9.2.1 百度地图API产品简介9.2.2 申请访问密钥9.2.3 Place API的使用9.2.4 步行导航检索的使用9.2.5 百度坐标转换9.3 MySQL的使用9.3.1 MySQL的下载与安装9.3.2 MySQL的常用操作9.3.3 JDBC的基本使用9.3.4 案例:使用JDBC查询数据9.4 BAE的MySQL服务9.4.1 创建数据库9.4.2 使用phpMyAdmin操作MySQL9.4.3 案例:使用JDBC操作MySQL9.5 “周边搜索”应用实现9.5.1 应用开发准备9.5.2 封装数据库操作9.5.3 封装百度地图操作9.5.4 编写步行导航页面9.5.5 CoreService类的实现9.5.6 部署应用及测试体验9.6 小结第10章 游戏开发实战:猜数字10.1 “猜数字”功能及设计10.1.1 游戏规则10.1.2 游戏术语10.1.3 核心流程设计10.1.4 数据表设计10.2 “猜数字”游戏的实现10.2.1 游戏开发准备10.2.2 游戏算法封装10.2.3 数据库操作封装10.2.4 核心处理逻辑10.2.5 CoreService类的实现10.2.6 部署应用及测试体验10.3 小结第11章 智能聊天应用开发实战:聊天机器人11.1 聊天机器人原理及设计11.1.1 实现原理11.1.2 数据表设计11.2 全文检索引擎Lucene11.2.1 Lucene的组成结构11.2.2 倒排索引结构11.2.3 索引和检索原理11.2.4 常用API介绍11.2.5 Lucene的评分机制11.2.6 案例:使用Lucene索引和检索11.3 中文分词11.3.1 中文分词方法11.3.2 IK分词器的使用11.4 索引浏览器Luke11.4.1 Luke的功能及下载11.4.2 Luke的用法11.5 聊天机器人的实现11.5.1 应用开发准备11.5.2 封装数据库操作11.5.3 封装聊天服务类11.5.4 CoreService类的实现11.5.5 应用启动时创建索引11.5.6 部署应用及测试体验11.6 小结附录 返回码及接口调用次数说明
评论关闭。