作者簡介
陳小龍,有著豐富的基於微信公眾平台的開發經驗,精通PHP和javascript,python編程,目前主要研究數據處理和數據存儲,技術棧包括Spark ,Hive, Druid ,Elasticsearch等大數據領域常用工具和平台。
書籍目錄
第1章與微信的第一次親密接觸
1.1微信,移動網際網路的領導者
1.2微信公眾平台
1.2.1註冊公眾號
1.2.2功能
1.2.3管理
1.2.4推廣
1.2.5統計
1.2.6設定
1.2.7開發者中心
第2章微信開發準備
2.1進入微信開發模式
2.2php開發環境的搭建
2.3虛擬主機的使用
2.4配置騰訊雲伺服器
第3章微信開發基礎
3.1開發模式接入
3.1.1開發模式接入
3.1.2微信伺服器間通信原理
3.2微信開發調試軟體
3.3公眾號接收用戶訊息類型講解
3.3.1接收文本訊息
3.3.2接收圖片訊息
3.3.3接收語音訊息
3.3.4接收視頻訊息
3.3.5接收地理位置訊息
3.3.6接收連結訊息
3.3.7關注\取消關注事件訊息
3.3.8接收語音識別結果
3.3.9代碼實現接收訊息示例
3.4公眾號向用戶回復訊息類型講解
3.4.1回復文本訊息
3.4.2回復圖片訊息
3.4.3回復語音訊息
3.4.4回復視頻訊息
3.4.5回複音樂訊息
3.4.6回復圖文訊息
3.3.7代碼實現回復訊息示例
3.5高級群發接口
3.5.1上傳圖文訊息素材
3.5.2根據分組進行群發
3.5.3根據OpenID列表群發
3.5.4刪除群發
3.5.5預覽接口
3.5.6查詢群發訊息傳送狀態
3.5.7事件推送群髮結果
第4章開發模式進階
4.1ACCESS_TOKEN
4.1.1接口調用請求說明及實現
4.1.2編寫代碼獲得access_token
4.2自定義選單
4.2.1自定義選單介紹
4.2.2選單按鈕類型
4.2.3創建選單接口說明
4.2.4創建選單
4.2.5查詢選單
4.2.6刪除選單
4.2.7自定義選單事件推送訊息類型
4.2.8代碼實現自定義選單功能
4.3自定義選單的事件推送
4.3.1點擊選單拉取訊息時的事件
4.3.2點擊選單跳轉連結時的事件
4.3.3掃碼推事件
4.3.4掃碼推事件且彈出“訊息接收中”提示框的事件
4.3.5彈出系統拍照發圖的事件
4.3.6彈出拍照或者相冊發圖的事件
4.3.7彈出微信相冊發圖器的事件
4.3.8彈出地理位置選擇器的事件
4.3.9代碼實現選單功能
4.4客服接口
4.4.1添加客服賬號
4.4.2修改客服賬號
4.4.3刪除客服賬號
4.4.4設定客服賬號頭像
4.4.5獲取所有客服賬號
4.4.6傳送客服訊息
4.5微信語義理解接口
4.6用戶管理
4.6.1創建分組
4.6.2查詢所有分組
4.6.3查詢用戶所在分組
4.6.4修改分組名
4.6.5移動用戶分組
4.6.6設定用戶備註名
4.6.7獲取用戶基本信息
4.6.8獲取用戶列表
4.6.9獲取用戶地理位置
4.6.10網頁授權獲取用戶基本信息
4.7上傳下載多媒體檔案
4.7.1上傳多媒體檔案
4.7.2下載多媒體檔案
第5章賬號管理
5.1生成帶參數的二維碼
5.1.1創建二維碼ticket
5.1.2通過ticket換取二維碼
5.1.3掃描帶參數二維碼事件訊息
5.1.4代碼實現
5.2縮短URL連結字元串
5.2.1接口調用請求說明
5.2.2代碼實現示例講解
第6章套用接口調用
6.1天氣查詢
6.1.1接口API
6.1.2開發實現
6.2API調用之百度翻譯
6.2.1申請百度翻譯API接口
6.2.2百度翻譯介紹
6.2.3代碼實現
6.3自動聊天
6.3.1接口參數說明
6.3.2代碼實現自動聊天
6.4笑話
6.4.1笑話接口API
6.4.2開發實現
6.5快遞查詢
6.5.1快遞查詢接口
6.5.2開發實現
6.6火車信息查詢
6.6.1申請查詢接口
6.6.2接口說明
6.6.3開發實現
第7章套用開發實戰
7.1企業會員卡
7.1.1頁面設計
7.1.2資料庫設計
7.1.3邏輯處理代碼
7.2微信大螢幕
7.2.1原理解析
7.2.2開發實現
7.3語音智慧型查詢
7.3.1語音識別和語義理解
7.3.2開發實現
7.4使用dedecms做一個微網站
7.4.1下載安裝dedecms
7.4.2dedecms標籤講解
7.4.3模板頁面設計
7.4.3將微網站放入微信
第8章詳述微信JS-SDK
8.1JS-SDK的使用
8.1.1微信JS-SDK使用步驟
8.1.2接口調用說明
8.1.3接口使用許可權簽名算法
8.2分享接口
8.2.1分享到朋友圈接口
8.2.2分享給朋友接口
8.2.3分享到QQ接口
8.2.4分享到騰訊微博接口
8.3圖像接口
8.3.1拍照或從手機相冊中選圖接口
8.3.2預覽圖片接口
8.3.3上傳圖片接口
8.3.4下載圖片接口
8.4音頻接口
8.4.1開始錄音接口
8.4.2停止錄音接口
8.4.3監聽錄音自動停止接口
8.4.4播放語音接口
8.4.5暫停播放接口
8.4.6停止播放接口
8.4.7監聽語音播放完畢接口
8.4.8上傳語音接口
8.4.9下載語音接口
8.4.10識別音頻並返回識別結果接口
8.5界面操作接口
8.5.1隱藏右上角選單接口
8.5.2顯示右上角選單接口
8.5.3關閉當前網頁視窗接口
8.5.4批量隱藏功能按鈕接口
8.5.5批量顯示功能按鈕接口
8.5.6隱藏所有非基礎按鈕接口
8.5.7顯示所有功能按鈕接口
8.6微信卡券接口
8.6.1調起適用於門店的卡券列表並獲取用戶選擇列表接口
8.6.2批量添加卡券接口
8.6.3查看微信卡包中的卡券接口
8.7其他接口
8.7.1獲取網路狀態接口
8.7.2查看位置接口
8.7.3獲取地理位置接口
8.7.4調起微信掃碼接口
8.7.5跳轉微信商品頁接口
8.7.6發起微信支付接口
8.8調用接口常見錯誤及解決方法
第9章微信企業號
9.1微信企業號介紹
9.2操作界面
9.3建立連線
9.3.1主動調用
9.3.2回調模式
9.4管理通訊錄
9.4.1管理部門
9.4.2管理成員
9.4.3管理標籤
9.5管理多媒體檔案
9.5.1上傳多媒體檔案
9.5.2獲取多媒體檔案
9.6接收訊息與事件
9.6.1關注與取消
9.6.2接收普通訊息
9.6.3接收事件
9.6.4被動回響訊息
9.7傳送訊息
:9.8自定義選單
9.8.1創建套用選單
9.8.2刪除選單
9.8.3獲取選單列表
9.9第三方套用授權
第10章網站最佳化
10.1ab頁面壓力測試
10.2頁面靜態化
10.3安裝高性能伺服器nginx
10.4負載均衡
10.5使用Redis
10.5.1安裝redis
10.5.2redis的使用和性能對比
第11章微信連線智慧型設備
11.1微信硬體平台
11.1.1設備號簡介
11.1.2微信用戶場景介紹
11.1.3硬體平台接入流程
11.2硬體平台中的三個重要概念
前言
背景知識
微信公眾平台的開發需要讀者有一定的PHP基礎知識,PHP是一種HTML內嵌式的語言,廣泛用於網站開發。微信伺服器和開發者的伺服器間有兩種數據傳輸方式,分別是xml和json。其中xml主要用在接收傳送普通訊息和事件推送中,而用戶管理、創建自定義選單和高級群發等則需要用到json格式數據。
微信對外開放了很多的接口以便於開發者可以製作出擁有更好的用戶體驗的公眾賬號,比如接收傳送文字、圖片、視頻等多種形式的訊息,這樣可以實現與用戶良好的互動功能。開發者可以利用地理位置、掃描二維碼和微信JS-SDK等接口打造功能更加豐富的微信公眾平台。另外,使用微信的智慧型語義接口和語音識別技術可以開發出基於語音控制的高級套用,本書7.3節便借用此技術實現了一個簡單的智慧型語音查詢天氣的套用。
微信的社交功能實現了人與人的連線,微信公眾平台實現了人與服務的連線,在微信公眾平台的基礎上,微信推出了設備號的概念,向
智慧型硬體領域延伸,為微信實現其“連線一切”的目標奠定了堅實基礎。
本書內容
本書共分為11章,每章內容簡述如下。
第1章簡要介紹了微信的發展起源以及對移動網際網路的巨大影響,簡述了微信具備的各種實用功能。本章重點介紹了微信公眾平台後台的各項功能。
第2章介紹了在微信開發前的準備,包括進入微信的開發模式,搭建PHP運行環境,使用虛擬主機和配置雲主機。這是進行微信公眾平台開發的必要前提。
第3章講解了在開發模式下微信公眾平台的基礎接口,介紹了微信伺服器和開發者伺服器間的通信原理。重點講解了接收用戶訊息和向用戶傳送訊息。
第4章講解了微信公眾平台的高級接口,包括自定義選單的創建、查詢、刪除,自定義選單的事件推送,客服接口和用戶管理接口等。詳細講解了8種選單類型並列出了實現代碼,自定義選單時微信公眾平台非常重要的功能。高級接口需要一定的許可權才可調用,access_token是調用高級接口的憑證。
第5章講解了賬號管理,如何使用接口創建場景二維碼。掃描二維碼關注微信公眾號是增粉的重要渠道,通過創建不同的二維碼以滿足不同場景用戶掃碼的需求。
第6章通過在微信公眾平台上實現6個不同的套用,讓讀者對微信公眾平台的套用場景有了具體而深刻的認識。本章對這些套用從接口申請、數據獲取到開發實現都做了詳細的解讀。
第7章套用開發實戰部分講解了4個常用開發案例,包括企業會員卡、微信大螢幕、智慧型語音查詢和使用dedecms。本章要求讀者有一定的前端開發能力,比如jQuery實現會員卡頁面布局,ajax實現微信牆內容的實時更新等。
第8章詳細介紹了微信JS-SDK的使用,包括分享接口、圖像接口、音頻接口和界面操作接口等,開發者可利用這些接口開發出功能豐富的
微網站。
第9章講解了微信企業號,介紹了微信企業號後台的操作界面,如何開啟回調模式以及回調模式下訊息的接收與傳送等。並以圖文並茂的形式詳述了如何接入第三方套用。
第10章主要介紹了如何進行網站最佳化以提升訪問速度,包括網站壓力測試、頁面靜態化、安裝高性能nginx伺服器、負載均衡和redis快取系統的使用。
第11章簡要介紹了微信的硬體平台生態。
適合讀者
本書可以當作微信公眾平台開發的入門讀物,也可以作為提高開發技能的參考書本。閱讀本書需要一定的PHP基礎知識,另外本書也涉及一些伺服器及前端開發知識,對於其中難以理解的部分,讀者可查詢相關資料。