《微信公众平台应用开发实战》是微信公众平台应用开发领域的经典著作,作者是腾讯公司的资深软件开发工程师,而且是微信公众平台应用开发的先驱者之一。本书全面介绍了微信公众平台应用开发所需的各项技术,系统解读了微信公众平台开放的API和各项高级功能,逐步讲解了微信公众平台应用开发的流程、方法和技巧。注重实战,不仅通过3个实战案例呈现了娱乐型、应用型、游戏型应用的完整开发过程,还实现了一个快速开发公众平台应用的框架,读者可以直接用于快速开发自己的公众平台应用。
《微信公众平台应用开发实战》一共9章,在逻辑上分为四大部分:第一部分(第1章)介绍了微信公众平台的开发模式、数据交互方式,以及开发公众平台应用所需要的各项技术;第二部分(第2~4章)首先详细讲解了微信公众平台开放的所有API的功能特性及使用方法,然后实现了一个快速开发公众平台应用的框架,这个框架可供读者直接使用;第三部分(第5~7章)以迭代的方式讲解了3个实战案例的完整开发过程,这3个实战案例涉及的应用分别是娱乐型、应用型和游戏型的,其中应用型实战案例用到了人脸识别等技术;第四部分(第8~9章)详细探讨了应对海量请求和恶意请求的方法,这是企业运营公众账号(尤其是服务号)时容易忽视的,但也是应该重点关注的。
前 言
第1章 搭建开发环境和相关技术介绍
1.1 微信公众平台简介
1.2 公众平台开发模式的数据交互方式
1.3 AppServ的安装与配置
1.4 zendstudio的安装与配置
1.5 相关技术介绍
1.5.1 PHP
1.5.2 HTTP
1.5.3 XML
1.5.4 MySQL
1.5.5 HTML5
1.6 小结
第2章 微信公众平台API详解
2.1 网址接入
2.1.1 接口配置信息
2.1.2 Token验证
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.4 事件推送
2.5 会话界面自定义菜单
2.5.1 获取凭证的方法
2.5.2 自定义菜单的创建
2.5.3 自定义菜单的获取
2.5.4 自定义菜单的删除
2.5.5 菜单相关接口的限制
2.6 小结
第3章 开发你的
第一个应用-echo server
3.1 实现网址接入
3.2 解析用户输入并组装返回
3.3 错误处理
3.4 封装代码
3.4.1 日志封装
3.4.2 一个简单的框架
3.4.3 数据库访问封装
3.5 小结
第4章 带自定义菜单的echo server
4.1 在编辑模式中使用自定义菜单
4.2 使用CURL发送HTTP请求
4.2.1 使用CURL发送请求的基本流程
4.2.2 获取CURL请求的输出信息
4.2.3 使用CURL发送GET请求
4.2.4 使用CURL发送POST请求
4.2.5 使用CURL上传文件
4.3 获取access_token
4.4 自定义菜单的操作
4.5 实现带自定义菜单的echo server
4.6 小结
第5章 实战案例1:娱乐性图片应用-“每日十幅图”
5.1 需求和交互描述
5.2 技术方案
5.2.1 为什么使用问号
5.2.2 为什么使用图文消息
5.2.3 表设计
5.2.4 批量重命名
5.3 代码实现
5.3.1 常量定义
5.3.2 成员变量和初始化
5.3.3 主业务逻辑
5.3.4 总代码清单
5.4 小结
第6章 实战案例2:人脸识别应用--findface
6.1 需求和交互描述
6.2 人脸识别基本概念
6.3 人脸识别OPENAPI
6.4 数据库表设计
6.5 后台逻辑设计
6.6 代码实现
6.6.1 配置定义部分
6.6.2 Face++接口封装部分
6.6.3 Group的创建和训练
6.6.4 findface主逻辑
6.7 把照片保存到本地
6.8 小结
第7章 实战案例3:趣味游戏-命运左轮
7.1 游戏过程
7.2 数据表设计
7.3 自定菜单设计
7.4 具体代码实现
7.4.1 AbstractInterface.php
7.4.2 WeChatCallBackMYZL.php
7.4.3 Ready.php
7.4.4 Start.php
7.4.5 ChipIn.php
7.4.6 PutMagic.php
7.4.7 Shoot.php
7.4.8 GetOp.php
7.4.9 AddUser.php
7.4.10 Matcher.php
7.5 运行截图
7.6 小结
第8章 海量请求的应对方法
8.1 影响公众账号的响应速度的因素
8.1.1 网络时延
8.1.2 请求处理时间
8.2 使用高性能的Web组件
8.2.1 安装
8.2.2 配置和运行
8.2.3 ab测试
8.3 监控服务器的各项指标
8.3.1 top命令
8.3.2 vmstat和sar命令
8.3.3 netstat命令
8.3.4 Nmon监控
8.4 使用缓存系统
8.4.1 Redis简介
8.4.2 Redis的使用和性能对比
8.5 数据库的备份和扩展
8.5.1 主从复制和读写分离
8.5.2 数据库的垂直划分和水平划分
8.6 接入层反向代理
8.7 小结
第9章 恶意请求的应对方法
9.1 URL访问限制
9.2 防止SQL注入
9.3 用户输入导致XML格式错误
9.4 PHP安全
9.5 DDOS简介
9.5.1 SYN flood
9.5.2 应用层DDOS
9.5.3 ReDOS
9.6 小结
《中国历代画家佳作品鉴:王个簃》内容简介:王个簃绘画继承了吴昌硕“重、拙、大”的绘画特点,与此同时潜心研究青藤、白阳、八大
《医学就会》内容简介:继《医本正经》之后,懒兔子又一本畅销榜首的漫画中医指南,一学就会的中医体系,手到擒来的中医入门知识。
《往事住的房间》内容简介:陈丹燕历时20年写就的世界各地博物馆独家故事! 每个人都觉得自己记性不好,但是,人类真是一种不肯忘记
《华杉讲透《论语》:修订版(全2册)》内容简介:华杉先生精研《论语》30多年,综合了朱熹、王阳明、张居正等先贤的经典阐释,用4
网络伴随我们的时间不算很长,然而因特网的流行和商业化的普及速度却是惊人的,这促使人类活动和社会的每个领域都发生了改变。我
《中论讲记》内容简介:《中论》,又称《中观论》或《正观论》,与《百论》《十二门论》合称三论宗据以立宗的“三论”,撰成时间约
各位程序员一定希望自己编写的代码是能让老板赞赏、满意的代码;是能让客户乐意掏钱购买的代码;是能让使用者顺利使用的代码;是
《暴力K线擒大牛》内容简介:《暴力K线擒大牛》是中国股市传奇人物“跑赢大盘的王者”王宁老师20余年炒股经验的结晶,是继超级畅销
《你有梦想,就有力量》内容简介:《你有梦想,就有力量——潘石屹给年轻人的十二堂人生经营课》从潘石屹公开发表的演讲和著述中选
Visual Foxpro程序设计教程 本书特色 本书围绕“岳麓书院图书管理系统”实例,完整地描述了数据库应用系统开发的各个环节,将系统开发的具体步骤详细地贯穿...
《数据之美》内容简介:这是一本教我们如何制作完美可视化图表,挖掘大数据背后意义的书。作者认为,可视化是一种媒介,向我们揭示
《痛苦典当行:南人诗歌绘本》内容简介:《痛苦典当行》精选“短诗王”南人的七十多首犀利诗作,搭配新锐插画师黄丽的三十多张奇诡
在不远的未来,日常物品将能够迅速理解我们的需求,改善我们的生活,并随处可见。为了实现这一预期,我们需要能够发现用户使用产
《LabVIEW大学实用教程(第3版)》主要内容:LabVIEW是一种图形化编程语言,广泛用于仿真、数据采集、仪器控制、测量分析和数据显示
最权威的Python教程,由Python作者GuidovanRossum主笔,有少许学院味道。中文电子版由刘鑫、李梦夷翻译。英文原稿网址:http://d
《发现高更:在孤独中飞翔》内容简介:130年前,高更踏上塔希提岛,一个被称为世外桃源的南太平洋小岛。他来自文明却渴望原始,看似
《Head First Go语言程序设计》内容简介:Go是为高性能网络和多处理而设计的,但与python和javascript一样,该语言易于阅读和使用。
《亚细亚生产方式与东方社会发展道路》内容简介:对马克思的亚细亚生产方式的讨论和争论,不仅关系到对这一理论本身的评价和东方社
图解HTTP 本书特色 《图解http》对互联网基盘——http协议进行了全面系统的介绍。作者由http协议的发展历史娓娓道来,严谨细致地剖析了http协议的结...
《PythonUNIX和Linux系统管理指南》介绍了Python语言如何为管理uNIx和Linux服务器提供各种更加有效的任务处理方式。书中各章都提