微信公眾號和微信小程序開發(fā)需要注意的事項
微信公眾號、小程序開發(fā)近來成了程序開發(fā)的一大熱門,雖然開發(fā)所涉及的難點知識不多,但對于一個新手而言,閱讀并理解文檔并非易事。為方便要進行相關(guān)項目開發(fā)的朋友快速進入重點,現(xiàn)歸納基本步驟如下:
一、開發(fā)前準備
(1)準備一個服務(wù)器,一個已經(jīng)備案的域名(小程序開發(fā)必須使用:https)
(2)涉及到微信支付的,需提前在微信支付商戶平臺,申請商戶號和秘鑰
(3)如果需要將微信公眾號或微信小程序相互打通,需提前在微信開放平臺注冊賬號,并將微信公眾號或小程序綁定在一起(此時才會獲取到unionid)
二、配置
(1)開發(fā)配置
操作路徑:微信公眾平臺 —— 開發(fā) —— 基本配置
操作頁面
注意:如果是進行公眾號網(wǎng)頁開發(fā)以上配置不是必須的
(2)公眾號設(shè)置
操作路徑:微信公眾平臺 —— 設(shè)置 —— 公眾號配置
操作頁面
注意:以上設(shè)置,只有在進行公眾號網(wǎng)頁開發(fā)的時候需要,小程序開發(fā)不需要
三、開發(fā)
(1)微信公眾號的開發(fā)
微信公眾號開發(fā)要分為:與微信服務(wù)器交互的開發(fā)和不與微信服務(wù)器交互的開發(fā)。與微信服務(wù)器交互的開發(fā),就是微信服務(wù)器主動與你的服務(wù)器通訊,以響應(yīng)你的請求。例如,你的用戶向你的公眾號發(fā)送一條信息,你的服務(wù)器接受到信息后自動發(fā)送一條回復(fù)消息。
對于與微信服務(wù)器交互的開發(fā),首先需要驗證微信服務(wù)器。在上面的開發(fā)配置處,我們已經(jīng)配置了服務(wù)器地址。此服務(wù)器地址就是驗證微信服務(wù)器時,微信服務(wù)器需要調(diào)用的地址。驗證微信服務(wù)器時,微信服務(wù)器會向此地址發(fā)送POST請求,傳遞一些參數(shù),此地址接受到參數(shù)后,需要作出相應(yīng)的處理。
下面以ThinkPHP的案例來說明
注意:不需要與微信服務(wù)器交互的開發(fā),以上內(nèi)容可以省略
不管是否需要與微信服務(wù)器交互,access_token是必不可少的。因為access_token是公眾號的全局唯一接口調(diào)用憑據(jù),公眾號調(diào)用各接口時都需使用access_token。因此在調(diào)用其他接口之前,需要先調(diào)用接口獲取access_token。
獲取access_token,可以調(diào)用如下接口:
請求鏈接
參數(shù)說明
返回結(jié)果
注意:由于access_token的有效期目前為2個小時,所以在獲取到access_token后可以將其以文件的形式保存起來,使用時,先判斷保存的access_token是否過期,沒有過期則直接使用,過期了則重新調(diào)用接口獲取新的access_token并保存到文件中。
access_token獲取之后,其他接口即可按開發(fā)文檔直接調(diào)用。
(2)小程序開發(fā)
小程序開發(fā)相對于公眾號開發(fā)而言是比較簡單的,其難點就是調(diào)起授權(quán)登錄窗,獲取用戶信息。那么如何獲取用戶的登錄信息呢?
具體步驟如下:
調(diào)用wx.login(OBJECT)接口,獲取登錄憑證(code),調(diào)用后臺自己的接口,用code 換取 session_key,獲取到session_key后,使用自己的加密方式生成新的session_key,將其返回給客戶端,客戶端接收到新的session_key后將其保存在本地。
進入其他需要用戶信息的頁面,先調(diào)用wx.checkSession(OBJECT)接口,檢測用戶登錄態(tài)是否失效,如果用戶登錄態(tài)失效了,需要重新操作第一步,獲取新的session_key
如果登錄態(tài)沒有失效,將之前本地已經(jīng)保存的session_key傳至后臺,后臺接收到后,通過session_key獲取用戶信息
(3)微信支付開發(fā)
微信開發(fā)數(shù)據(jù)的傳輸使用的是XML格式,因此在接受數(shù)據(jù)和發(fā)送數(shù)據(jù)時,需要進行XML的封裝和解析。微信官方Demo中已經(jīng)封裝相關(guān)方法,大家可以根據(jù)需要選擇版本。
掃碼支付。微信掃碼支付,有兩種模式,模式一不需要預(yù)先指定支付用戶的openid,而模式二需要預(yù)先指定用戶的openid。對于模式一,需要先在微信支付商戶后臺,配置掃碼回調(diào)地址,然后再根據(jù)商品或訂單信息生成二維碼。微信掃碼時,微信服務(wù)器會將商品或訂單信息及掃碼人的openid推送到掃碼回調(diào)地址。模式一和模式二的不同之處在于獲取openid的方式,其他的步驟基本一樣,都是調(diào)用統(tǒng)一下單API。

kf@jusoucn.com
4008-020-360


4008-020-360
