很多朋友對微信公眾號的智能回復等功能比較感興趣,在這篇文章中,我簡(jiǎn)單的跟大家介紹下微信公眾號的開(kāi)發(fā)及數據交互流程,讓大家至少能大概了解微信開(kāi)發(fā)是怎么一回事。

首先,微信公眾號分兩種類(lèi)型和兩種情況,兩種類(lèi)型分別是訂閱號和服務(wù)號,兩種情況是,已認證或未認證的訂閱號。他們分別具體的接口權限大家可以在微信后臺的“開(kāi)發(fā)者中心-接口權限”看到。
如下圖所示是我的接口權限:

以上顯示“未獲得”的接口狀態(tài),就是需要訂閱號或服務(wù)號微信認證之后才有擁有的權限。
簡(jiǎn)單說(shuō),未認證的訂閱號只有基礎支持、自動(dòng)回復和發(fā)送回復消息的接口,只有實(shí)現一些較簡(jiǎn)單的數據交互功能,例如本公眾號(需要特別說(shuō)明一下,本公眾號也是未認證的訂閱號,關(guān)于自定義菜單是一個(gè)微博關(guān)聯(lián)認證的歷史遺留問(wèn)題,除此之外所有權限與普通未認證的訂閱號一樣)
那么,什么是接口?微信接口又是什么意思?
打個(gè)比方,如果一家公司是一個(gè)系統,創(chuàng )業(yè)之初,你可能一個(gè)人身兼多職,同時(shí)負責營(yíng)銷(xiāo)、財務(wù)、研發(fā)等,發(fā)展到了一定規模后為了提高公司整體的運行效率和服務(wù)水平,你就需要聘用不同的人才來(lái)幫你承擔相應的一部分工作,那么同時(shí),你也需要向這部分人提供對應的工作權限以滿(mǎn)足他們的工作需要,這就類(lèi)似于接口的概念。
微信接口簡(jiǎn)單說(shuō),是微信公眾平臺向第三方開(kāi)發(fā)者提供的一個(gè)用戶(hù)資源數據及功能的訪(fǎng)問(wèn)/使用權限。通過(guò)對開(kāi)發(fā)者提供開(kāi)放統一的API接口環(huán)境,來(lái)幫助微信第三方開(kāi)發(fā)者訪(fǎng)問(wèn)微信公眾平臺的功能和資源,以達到充分自由的運用微信公眾平臺用戶(hù)資源及功能的目的。
在微信上,要實(shí)現這一目的,需要開(kāi)啟“服務(wù)器配置”如下圖所示:

如圖所示:大家需要注意的是,一旦開(kāi)啟了服務(wù)器配置,微信平臺自帶的自動(dòng)回復、自定義菜單等功能全部失效,所有的事件推送都會(huì )被轉發(fā)到你所配置的服務(wù)器地址URL上。
簡(jiǎn)單解釋下開(kāi)發(fā)者ID和服務(wù)器配置各參數的作用:
AppID是應用ID,也就是微信開(kāi)發(fā)者編號的意思,在微信中主要用于創(chuàng )建微信菜單等。
AppSecret是應用密匙,與AppID是相配合的,意思可理解為這是私密的應用編號。
URL服務(wù)器地址是微信服務(wù)器像開(kāi)發(fā)者服務(wù)器推送消息和事件的地址,可理解為你家的住址。這里沒(méi)什么特別要求,無(wú)論你使用什么語(yǔ)言開(kāi)發(fā),只要能通過(guò)HTTP服務(wù)的80端口返回符合微信要求的XML信息即可。
Token令牌可理解為用來(lái)驗證安全接頭暗號,讓微信服務(wù)器知道對方就是我要找的人。
EncodingAESKey可理解為暗語(yǔ)加密交流,以免你與用戶(hù)之間的交互信息被第三方獲取到后泄露敏感數據。
梳理下過(guò)程,當微信用戶(hù)給你的微信公眾號發(fā)送消息后,消息到達微信服務(wù)器被處理成XML數據包并轉發(fā)給開(kāi)發(fā)者服務(wù)器(URL),開(kāi)發(fā)者服務(wù)器接收到數據包后就會(huì )把用戶(hù)消息經(jīng)過(guò)一系列的邏輯處理并再轉送給微信服務(wù)器,最后微信服務(wù)器再推送給用戶(hù)。
數據交互的流程:用戶(hù)發(fā)送消息—到達微信服務(wù)器—轉發(fā)給開(kāi)發(fā)者服務(wù)器—轉送微信服務(wù)器—推送給用戶(hù)
看到這里,相信大家已經(jīng)知道,微信公眾號的開(kāi)發(fā)關(guān)鍵流程在開(kāi)發(fā)者服務(wù)器處理用戶(hù)信息這一步上,至于這一步怎么做,那就是一個(gè)大話(huà)題了。
相比而言,微信開(kāi)發(fā)是很簡(jiǎn)單的,將用戶(hù)消息處理成符合微信要求的XML數據包結構即可,因此開(kāi)發(fā)重心全在邏輯處理上面。
如下圖所示,這是一個(gè)最基礎的文本消息XML結構:

上圖中Content就是返回給用戶(hù)的消息內容,是一個(gè)變量。
下面是我用一款工具模擬用戶(hù)發(fā)送消息給服務(wù)器的交互情況:

(微信開(kāi)發(fā)調試工具:http://api.huceo.com/weixin/debug/)
那么,怎么能擁有智能回復、人臉識別、微信點(diǎn)歌等等功能,這就需要借助第三方的API或者數據采集來(lái)實(shí)現,當開(kāi)發(fā)者服務(wù)器接收到用戶(hù)消息后,處理成符合對方API使用規則的請求,拿到JSON數據取出需要的內容經(jīng)過(guò)一系列的處理返回給用戶(hù)即可。
如下圖所示某API接口笑話(huà)數據的示例(這是最簡(jiǎn)單的一種結構):

最后,這篇文章僅僅是讓大家大概了解下微信公眾號的開(kāi)發(fā)流程。作為微信運營(yíng)者,該如何使用微信的各種高級功能?如果你是真正想把微信自媒體做好的話(huà),不好有沒(méi)有技術(shù),我的建議是用第三方平臺。
畢竟一些知名的第三方平臺都是公司團隊在開(kāi)發(fā),各種營(yíng)銷(xiāo)功能豐富,安全穩定性方面也有保障,大家可自行百度一下。
開(kāi)發(fā)平臺建議使用新浪云SAE,邀請注冊地址:http://t.cn/R40C6aD ,除了一定的免費額度外,新用戶(hù)首次注冊可獲得200云豆獎勵,首次充值可獲得600云豆獎勵。
相關(guān)文章:
推薦有關(guān)微信開(kāi)發(fā)的十個(gè)開(kāi)源項目
本站所有文章均為小宇博客原創(chuàng ),轉
聯(lián)系客服