具体描述
本书是目前微信公众平台应用开发领域内容最全面、系统和深入的一本书,也是技术版本最新的。由著名的资深微信公众平台应用开发工程师根据最新的微信5.1版撰写,全面解读了微信公众平台开放的所有API的各项功能和用法,系统讲解了微信公众平台应用开发的流程、方法和技巧。更为重要的是,它还深入讲解了微信公众平台应用开发的高级技术和技巧,如何与LBS等多种技术结合使用,如何调用其他第三方的数据和资源,等等。实战性非常强,包含大量小案例和3个有代表性的综合案例。
全书共11章,分为四个部分:第一部分(第1~2章)介绍了公众平台的使用、公众账号的认证、编辑模式的使用等基础知识;第二部分(第3~4章)首先讲解了如何启用开发模式,然后详细讲解了公众平台的消息接口(包括请求校验、请求消息、事件推送和响应消息),包含一个能够接收与响应任何类型消息的项目,读者可以将该项目导出成WAR包,作为公众平台的基础开发包(适用于订阅号和服务号),在开发公众账号时,只需要关注业务逻辑;第三部分(第5~6章)重点介绍了公众平台的自定义菜单接口和高级接口,并配有完整的接口调用示例和说明,读者可以将这部分的接口调用代码作为公众平台的高级开发包;第四部分(第7~11章)首先总结了一些实用的公众平台开发技巧,如使用表情、识别微信浏览器、图文消息使用、公众账号无响应处理、服务多个账号等,然后逐步详细地讲解了“周边搜索”、“猜数字”(游戏)和“聊天机器人”3个综合案例的开发过程,其中还包含如何与其他技术的结合使用及如何调用第三方的数据和资源,学习完本部分,读者完全有能力胜任大型企业公众账号的开发。附录为公众平台接口的返回码说明,以及公众平台接口的调用次数限制说明。
作者简介
刘运强,网名“柳峰”,资深微信公众平台应用开发工程师,国内微信公众平台应用开发的先驱之一,项目经验丰富。他还是一位资深的Java软件开发工程师和Android/iOS移动应用开发工程师,活跃于CocoaChina、OSChina、CSDN等社区,并在CSDN博客撰写了系列微信公众平台二次开发的教程,深受欢迎并被广泛传播,也因此获得CSDN博客移动开发版块的“博客冠军”。
目录信息
第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 响应消息对象转XML
4.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操作MySQL
9.4.3 案例:使用JDBC操作MySQL
9.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 全文检索引擎Lucene
11.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 索引浏览器Luke
11.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 小结
附录 返回码及接口调用次数说明
· · · · · · (收起)
读后感
用户评价
作为一名资深前端工程师,我购买这本书的初衷是想快速了解一下微信平台的特定开发范式,看看是否有可以迁移到我现有工作流程中的效率提升点。这本书的结构安排非常高效,前几章用最快的速度带过了基础环境配置和基本语法,直接切入了核心业务模块的开发。我最感兴趣的是它关于第三方服务集成的部分,尤其是对于支付和用户消息推送的处理流程,描述得非常清晰、逻辑严密。书中的代码示例质量极高,干净、模块化做得很好,可以直接作为我们团队未来项目模板的参考。更难得的是,作者在讲解API调用时,常常会附带一些官方文档中不易被察觉的“坑点”和注意事项,比如某些参数的兼容性问题,这些经验之谈对于节省实际开发中的调试时间是无价之宝。这本书与其说是一本入门书,不如说是一本“高效实战手册”,非常适合已有编程基础,但需要迅速熟悉特定平台开发规范的专业人士。
这本书简直是为初入编程世界的朋友量身定做的,它的讲解方式太细腻了,我一个对代码完全不感冒的人,居然也能跟着书里的步骤一步步搭建起自己的第一个小程序。作者的叙述口吻非常亲和,就像身边一个耐心的老师在手把手地教你,完全没有那种高高在上的技术术语堆砌感。尤其让我印象深刻的是,它对“组件化”和“数据绑定”这些核心概念的阐释,不是干巴巴地罗列定义,而是通过生动的项目案例,让你在实践中自然而然地理解了它们的精髓。我记得书里有一个关于制作一个“每日一句”应用的小节,它把整个流程拆解得非常细致,从界面的布局到后台逻辑的处理,每一步都有清晰的截图和代码注释,即便是晚上光线不好的时候看,也能很快跟上节奏。读完这一部分,我信心大增,感觉自己不再是被技术吓倒的“小白”了,而是真正掌握了一门实用的技能。这本书的价值就在于,它成功地架设了理论知识和实际操作之间的桥梁,让学习过程充满了成就感,而不是挫败感。
坦率地说,我本来对手册式的技术书籍是有些抗拒的,总觉得它们过于死板,缺乏对行业趋势和深层次架构思考的引导。然而,这本让我刮目相看。它不仅仅停留在告诉你“如何做”,更深入地探讨了“为什么这么做”。书中对微信生态中的权限管理和接口调用策略的分析,展现了作者深厚的行业经验。比如,在讲解如何优化应用的加载速度时,它对比了不同缓存策略的优劣,并结合最新的平台规范给出了最佳实践建议,这绝对是资深开发者才会关注的细节。我特别欣赏它在安全性方面的论述,很多新手教程都会忽略掉服务端安全校验的环节,但这本书却用了专门的章节来强调数据加密和防止恶意请求的重要性,这体现了作者对产品长期运营负责任的态度。读完这些,我感觉自己对构建一个健壮、可维护的平台应用有了更宏观的认识,不再是零敲碎打的碎片知识,而是一个系统的知识体系。
我购买这本书的时候,其实对技术书籍抱持着一种“试试看”的心态,因为市面上很多同类出版物要么内容陈旧,要么质量参差不齐。这本书的出现,完全颠覆了我的预期。它最大的亮点在于,它没有将开发过程描绘成一条笔直向上的直线,而是坦诚地展示了开发过程中可能遇到的各种陷阱和弯路。例如,在涉及到数据存储方案的选择时,它没有直接推荐某一个“标准答案”,而是详细分析了不同存储机制在面对高并发、大数据量时的性能差异和适用场景,帮助读者建立起“情景驱动决策”的能力。这种深入到决策层面的讨论,让这本书的含金量大大提升。每次我感觉自己似乎遇到了瓶颈,翻开书中的某一章,总能找到针对性的解决方案或全新的思考角度。它更像是一位经验丰富的技术顾问,在你迷茫时,为你指引方向,而不是简单地给你一份操作指南。
这本书的排版和视觉设计绝对是同类书籍中的一股清流。我发现自己长时间阅读时,眼睛的疲劳感明显降低了。大量的图表和流程图被巧妙地穿插在文字描述中,极大地辅助了理解那些复杂的交互流程。我尤其喜欢它在每章末尾设置的“知识点回顾”和“常见问题解答”环节,这对于自我检验学习效果非常有帮助。我习惯于在读完一个大章节后,合上书本,用自己的语言复述一遍刚才学到的内容,而书中的总结部分恰好提供了校准我理解偏差的工具。此外,这本书对于如何构建一个具有良好用户体验的界面,有着独到的见解。它不仅仅是教你如何实现功能,更关注如何让用户在使用时感到愉悦。比如,在处理网络延迟的反馈机制上,书中提供的几种优雅的过渡动画设计思路,让我茅塞顿开,这已经超出了纯粹的技术范畴,触及到了产品设计层面。
13704694924
Java版本的微信公众平台应用开发指南。这套书真是应时应景啊,赞一个。
在博主Blog基础上更新扩展了一些 对于java开发者来说非常值得一看
微信公众平台完全使用手册
内容很全,案例代码可直接用于项目中,入门推荐