前言
第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 小結