999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于微信公眾平臺(tái)架構(gòu)的應(yīng)用系統(tǒng)開發(fā)

2015-02-06 10:28:01陸衛(wèi)忠趙玉雪朱云祥忻立
關(guān)鍵詞:微信用戶功能

陸衛(wèi)忠,趙玉雪,朱云祥,忻立

(1.蘇州科技學(xué)院電子與信息工程學(xué)院,江蘇蘇州215009;2.蘇州科技學(xué)院計(jì)算機(jī)應(yīng)用技術(shù)研究所,江蘇蘇州215009)

基于微信公眾平臺(tái)架構(gòu)的應(yīng)用系統(tǒng)開發(fā)

陸衛(wèi)忠1,2,趙玉雪1,朱云祥1,忻立1

(1.蘇州科技學(xué)院電子與信息工程學(xué)院,江蘇蘇州215009;2.蘇州科技學(xué)院計(jì)算機(jī)應(yīng)用技術(shù)研究所,江蘇蘇州215009)

介紹了移動(dòng)互聯(lián)網(wǎng)及應(yīng)用系統(tǒng)開發(fā)技術(shù)的發(fā)展趨勢(shì),剖析了微信公眾平臺(tái)的架構(gòu),從應(yīng)用模塊和接口訪問兩方面詳細(xì)說明了基于微信公眾平臺(tái)的移動(dòng)互聯(lián)網(wǎng)應(yīng)用設(shè)計(jì)的方法,并用“e活動(dòng)”作為實(shí)例進(jìn)行了系統(tǒng)的說明。

微信;微信平臺(tái);架構(gòu);APP

隨著人們生活水平的提高和科學(xué)技術(shù)的進(jìn)步,移動(dòng)互聯(lián)網(wǎng)正以雨后春筍之勢(shì)迅速發(fā)展。2013年中國移動(dòng)互聯(lián)網(wǎng)在延續(xù)了近幾年的增長(zhǎng)態(tài)勢(shì)的基礎(chǔ)上,進(jìn)一步在人們生活的方方面面深深地打上“移動(dòng)互聯(lián)網(wǎng)”的烙印。隨著智能手機(jī)成為第一終端、互聯(lián)網(wǎng)中心和個(gè)人信息中心,人們把自己的溝通、社交、娛樂、生活、商務(wù)、隱私交給了手機(jī)及其各種應(yīng)用[1]。因此,移動(dòng)應(yīng)用的發(fā)展趨于多樣化和個(gè)性化。

移動(dòng)互聯(lián)網(wǎng)應(yīng)用的原有開發(fā)模式已經(jīng)落后于應(yīng)用需求,是對(duì)開發(fā)人員的一大挑戰(zhàn)。騰訊公司微信公眾平臺(tái)的推出,為開發(fā)者提供了新的開發(fā)模式,彌補(bǔ)了傳統(tǒng)APP開發(fā)的不足,個(gè)人、企業(yè)可根據(jù)自身需求,定制各自的“門戶應(yīng)用”來提高訪問量,增加知名度。所以,掌握基于微信公眾平臺(tái)的應(yīng)用開發(fā)方法勢(shì)在必行。

1 微信公眾平臺(tái)的架構(gòu)

1.1 微信公眾平臺(tái)功能

微信公眾平臺(tái)主要有群發(fā)功能和高級(jí)功能[2]。群發(fā)功能,即群發(fā)一條消息,該消息會(huì)推送給關(guān)注公眾賬號(hào)的所有用戶。群發(fā)消息可以根據(jù)需求選擇單文字消息、圖片消息、語音消息、視頻消息和圖文消息。高級(jí)功能是公眾平臺(tái)提供給開發(fā)者用于二次開發(fā)的接口,分為編輯模式和開發(fā)模式,開發(fā)者只能選擇其中一種開發(fā)模式。

微信公眾賬號(hào)分為服務(wù)號(hào)和訂閱號(hào)(見表1),兩者都具有群發(fā)功能和高級(jí)功能,只是在功能權(quán)限方面有差異。

服務(wù)號(hào)一個(gè)月內(nèi)僅可以發(fā)送一條群發(fā)消息,可直接使用自定義菜單。服務(wù)號(hào)發(fā)給用戶的消息,會(huì)顯示在用戶的聊天列表中。并且,在發(fā)送消息給用戶時(shí),用戶將收到即時(shí)的消息提醒。

訂閱號(hào)為用戶提供信息和資訊。訂閱號(hào)每天可以發(fā)送一條群發(fā)消息,開發(fā)之后才能使用自定義菜單。訂閱號(hào)發(fā)給用戶的消息,將會(huì)顯示在用戶的訂閱號(hào)文件夾中。在發(fā)送消息給用戶時(shí),用戶不會(huì)收到即時(shí)消息提醒[2]。微信公眾平臺(tái)功能如圖1所示。

表1 服務(wù)號(hào)和訂閱號(hào)對(duì)比表

圖1 微信公眾平臺(tái)功能圖

1.2 微信公眾平臺(tái)架構(gòu)

公眾平臺(tái)消息接口為開發(fā)者提供了與用戶進(jìn)行消息交互的能力[3]。對(duì)于成功接入公眾平臺(tái)開發(fā)接口的公眾賬號(hào),用戶發(fā)消息給公眾號(hào),微信公眾平臺(tái)服務(wù)器會(huì)使用HTTP請(qǐng)求對(duì)接入的網(wǎng)址進(jìn)行消息推送,第三方服務(wù)器(開發(fā)者使用的服務(wù)器)可通過響應(yīng)包回復(fù)特定結(jié)構(gòu)的消息,從而達(dá)到回復(fù)消息的目的。

使用了高級(jí)功能的微信公眾賬號(hào)就成為一個(gè)配備了一些指令規(guī)則的賬號(hào)[3]。在用戶關(guān)注公眾賬號(hào)后,發(fā)送特定的指令給公眾賬號(hào)即可獲得相應(yīng)的結(jié)果。而這些規(guī)則的邏輯需要開發(fā)者根據(jù)公眾平臺(tái)的開發(fā)規(guī)則在后臺(tái)實(shí)現(xiàn)。用戶、微信服務(wù)器和第三方服務(wù)器三者之間的交互關(guān)系如圖2所示。

圖2 公眾平臺(tái)交互關(guān)系圖

(1)用戶在微信客戶端向微信平臺(tái)發(fā)送消息,該消息會(huì)通過網(wǎng)絡(luò)到達(dá)微信服務(wù)器;(2)微信服務(wù)器收到該消息后,把消息轉(zhuǎn)發(fā)給第三方服務(wù)器;(3)該服務(wù)器收到請(qǐng)求后,首先解析消息格式,提取消息的內(nèi)容,并經(jīng)預(yù)定義的業(yè)務(wù)邏輯處理,將處理結(jié)果封裝后返回給微信接口;(4)微信平臺(tái)把收到的消息轉(zhuǎn)發(fā)給用戶的微信客戶端。

2 微信公眾平臺(tái)的應(yīng)用設(shè)計(jì)方法

微信公眾平臺(tái)的高級(jí)功能中提供的兩種二次開發(fā)的模式:編輯模式和開發(fā)模式[4]。開發(fā)者根據(jù)需求可以選擇其中一種模式進(jìn)行二次開發(fā)。

2.1 二次開發(fā)模式

2.1.1 編輯模式編輯模式下具有的功能是:①消息推送;②預(yù)設(shè)自動(dòng)回復(fù),為用戶提供需求信息;③將系統(tǒng)平臺(tái)從PC端向WAP延伸[5]。

編輯模式采用跳轉(zhuǎn)到頁面方式[5],因此,可在系統(tǒng)平臺(tái)中進(jìn)行二次開發(fā),在系統(tǒng)服務(wù)器中制作功能頁面,供“編輯模式”下鏈接調(diào)用,這樣,使開發(fā)平臺(tái)應(yīng)用得到了拓展。

2.1.2 開發(fā)模式開發(fā)模式下具有的功能是:①提供資訊;②預(yù)設(shè)自動(dòng)回復(fù);③提取系統(tǒng)平臺(tái)數(shù)據(jù),實(shí)現(xiàn)個(gè)性化的服務(wù)[4]。

開發(fā)模式下,微信平臺(tái)可轉(zhuǎn)發(fā)HTTP請(qǐng)求的XML數(shù)據(jù)包到配置的URL上,開發(fā)人員設(shè)計(jì)的程序解析該XML數(shù)據(jù)包后對(duì)數(shù)據(jù)庫操作,從而將拓展功能引入到平臺(tái)中來:①引用網(wǎng)絡(luò)資源,如:天氣查詢、火車票查詢、幽默笑話;②自行設(shè)計(jì)數(shù)據(jù)庫,設(shè)計(jì)出個(gè)性化服務(wù),具有很強(qiáng)的開發(fā)拓展功能。編輯模式和開發(fā)模式的優(yōu)劣比較,見表2。

表2 編輯模式和開發(fā)模式優(yōu)劣對(duì)比表

2.2 應(yīng)用模塊及接口訪問

公眾平臺(tái)提供的應(yīng)用模塊主要有:接受用戶消息、向用戶回復(fù)消息、事件推送、會(huì)話界面自定義菜單等。而開發(fā)的前提是:網(wǎng)址接入,即接口配置信息。下面根據(jù)開發(fā)的流程來詳細(xì)介紹應(yīng)用模塊及其接口訪問方式。

(1)申請(qǐng)微信公眾賬號(hào)。輸入網(wǎng)址:https://mp.weixin. qq.com/進(jìn)行注冊(cè),需要提供一個(gè)電子郵箱,個(gè)人用戶還需提供身份信息。

(2)部署第三方服務(wù)器。選擇云服務(wù)器或者在Internet上可訪問的普通服務(wù)器。

(3)注冊(cè)接口,即填寫接口配置信息:登錄自己的公眾賬號(hào)的前臺(tái),依次單擊導(dǎo)航上的“高級(jí)功能”→右邊的“開發(fā)模式”→“成為開發(fā)者”,可以看到如圖3的界面。

圖3 接口配置界面

開發(fā)者需要提供一個(gè)URL和一個(gè)Token,URL是上一步部署的服務(wù)器的接口,是第三方服務(wù)器和微信服務(wù)器交互的橋梁。例如:當(dāng)用戶發(fā)消息給微信平臺(tái)時(shí),微信服務(wù)器會(huì)將該消息轉(zhuǎn)發(fā)給URL所指向的第三方服務(wù)器。Token是微信服務(wù)器和被開發(fā)的公眾賬號(hào)服務(wù)器之間的密鑰[6];

(4)編寫代碼,完成應(yīng)用模塊的業(yè)務(wù)邏輯。

應(yīng)用模塊一:接收用戶消息。當(dāng)微信用戶向公眾賬號(hào)發(fā)消息時(shí),微信服務(wù)器會(huì)將用戶消息用XML封裝后以HTTP請(qǐng)求發(fā)送到配置的URL上。可以接收的消息分為:文本消息、圖片消息、地理消息和鏈接消息。例如,文本消息的XML格式是:

根據(jù)不同類型的消息字段來獲得所需的信息。表3就是主要的消息字段及其描述。

表3 接收用戶消息字段描述

應(yīng)用模塊二:向用戶回復(fù)消息。當(dāng)微信用戶發(fā)來一條消息時(shí),要回復(fù)相應(yīng)的消息。根據(jù)收到的MsgType來確定消息的類型,然后構(gòu)造XML數(shù)據(jù)包以HTTP響應(yīng)回復(fù)給用戶。可以回復(fù)的消息分為:文本消息、音樂消息、鏈接消息和圖文消息。例如,回復(fù)鏈接消息的XML數(shù)據(jù)包格式是:

回復(fù)用戶消息字段描述見表4。

表4 回復(fù)用戶消息字段描述

應(yīng)用模塊三:事件推送。當(dāng)用戶在客戶端觸發(fā)了事件的時(shí)候,公眾賬號(hào)服務(wù)器也會(huì)收到一條消息。這些事件包括用戶訂閱公眾賬號(hào)、取消關(guān)注公眾賬號(hào)和單擊自定義菜單[7]。此時(shí),公眾賬號(hào)服務(wù)器會(huì)收到事件推送的XML格式消息,開發(fā)者可根據(jù)需求讀取相關(guān)字段并進(jìn)行處理即可。公眾賬號(hào)服務(wù)器收到的事件推送的消息格式如下:

事件推送消息字段描述如表5所示。

表5 事件推送消息字段描述

應(yīng)用模塊四:會(huì)話界面自定義菜單。自定義菜單的創(chuàng)建、獲取和刪除需要獲取憑證,這些操作的執(zhí)行需要主動(dòng)發(fā)起HTTP請(qǐng)求,借助相應(yīng)的API來實(shí)現(xiàn),如創(chuàng)建自定義菜單的接口地址是:

HTTP請(qǐng)求方法是POST方法,請(qǐng)求的參數(shù)是一個(gè)JSON格式的字符串。PHP提供了兩個(gè)內(nèi)建的函數(shù)來處理JSON格式的字符串:json_encode把PHP數(shù)組轉(zhuǎn)換成JSON格式的字符串;json_decode把JSON格式的字符串轉(zhuǎn)換成PHP的多維數(shù)組[8],為前后臺(tái)交互提供了可能。

創(chuàng)建菜單請(qǐng)求的POST數(shù)據(jù)的各個(gè)參數(shù)的詳細(xì)描述見表6。

在完成各個(gè)模塊的業(yè)務(wù)邏輯之后,更新部署的代碼即可。在實(shí)際開發(fā)中,可以使用版本控制工具(SVN、CVS等)實(shí)時(shí)修改、實(shí)時(shí)更新。

表6 創(chuàng)建菜單請(qǐng)求中各個(gè)參數(shù)的描述

3 應(yīng)用設(shè)計(jì)實(shí)例

“e活動(dòng)”(活動(dòng)發(fā)酵劑)是一個(gè)開發(fā)實(shí)例,用來解決以下問題:商業(yè)營銷活動(dòng)通常以散發(fā)傳單等方式宣傳,達(dá)不到理想的效果;校園文化和商業(yè)活動(dòng)現(xiàn)場(chǎng)冷清,公眾的參與度不高;公益慈善活動(dòng)中缺乏實(shí)時(shí)的社會(huì)監(jiān)督;活動(dòng)結(jié)果無法系統(tǒng)總結(jié)和保存,以用于提高活動(dòng)質(zhì)量。

系統(tǒng)開發(fā)的步驟如下:

(1)申請(qǐng)“e活動(dòng)”微信公眾賬號(hào)。

(2)部署服務(wù)器。該系統(tǒng)選擇新浪云服務(wù)器。

(3)注冊(cè)后登錄公眾賬號(hào)的前臺(tái),開啟“開發(fā)模式”,填寫接口配置信息。

(4)完成業(yè)務(wù)邏輯。在“e活動(dòng)”中,用戶在微信上進(jìn)行的所有操作產(chǎn)生的數(shù)據(jù)均由微信客戶端發(fā)送給微信服務(wù)器后轉(zhuǎn)發(fā)給新浪云平臺(tái),系統(tǒng)在云平臺(tái)上對(duì)用戶請(qǐng)求做相應(yīng)的處理,并返回處理后的數(shù)據(jù)給微信服務(wù)器,最后微信服務(wù)器把系統(tǒng)的相應(yīng)數(shù)據(jù)發(fā)送至用戶的微信客戶端。同時(shí),系統(tǒng)直接將Discuz論壇架設(shè)在云平臺(tái)上,因此,可以與論壇(Discuz)集成,將活動(dòng)信息同步至論壇之上進(jìn)行保存,實(shí)現(xiàn)活動(dòng)信息公開化、持久化。系統(tǒng)原理如圖4所示。

(5)更新代碼,完善功能。“e活動(dòng)”開發(fā)過程中,使用SVN進(jìn)行版本控制,實(shí)行更新代碼。本系統(tǒng)的功能包括PC端B/S管理模塊、微信平臺(tái)服務(wù)模塊和Discuz論壇模塊,具體功能是這三個(gè)功能模塊的擴(kuò)展,系統(tǒng)功能圖如圖5所示。

圖4 “e活動(dòng)”系統(tǒng)原理圖

圖5 “e活動(dòng)”系統(tǒng)功能圖

“e活動(dòng)”的部分截圖如圖6、7所示。

圖6 “e活動(dòng)”系統(tǒng)注冊(cè)界面

圖7 “e活動(dòng)”的部分截圖

4 結(jié)語

目前,微信公眾平臺(tái)在企業(yè)移動(dòng)門戶、新聞資訊、娛樂、社交應(yīng)用、游戲等領(lǐng)域的使用越來越廣泛,微信公眾平臺(tái)的應(yīng)用越來越受人們的青睞。文中介紹了微信公眾平臺(tái)以及基于微信公眾平臺(tái)的應(yīng)用系統(tǒng)框架及實(shí)現(xiàn)方法,并以“e活動(dòng)”為實(shí)例詳細(xì)介紹了系統(tǒng)開發(fā)的流程,該應(yīng)用系統(tǒng)已在各類校園活動(dòng)中得到很好的應(yīng)用。

[1]鄭青瑩.2014億瑪智慧峰會(huì)聚焦移動(dòng)互聯(lián)網(wǎng)大數(shù)據(jù)應(yīng)用[EB/OL].[2014-10-31].http://gb.cri.cn/44571/2014/10/31/7872s4748983.htm.

[2]百度百科.微信[EB/OL].[2013-06-20].http://baike.baidu.com/view/5117297.htm.

[3]鐘志勇.微信公眾平臺(tái)應(yīng)用開發(fā)實(shí)戰(zhàn)[M].北京:機(jī)械工業(yè)出版社,2013.

[4]騰訊公司.微信公眾平臺(tái)官方[EB/OL].[2012-08-23].https://mp.weixin.qq.corn/.

[5]潘峰楠.基于微信公眾平臺(tái)移動(dòng)校園構(gòu)建芻議[J].信息系統(tǒng)工程,2013,12(20):49-50.

[6]易偉.微信公眾平臺(tái)搭建與開發(fā)揭秘[M].北京:機(jī)械工業(yè)出版社,2013.

[7]ZhiWei.微信公眾平臺(tái)開發(fā)教程消息接收響應(yīng)[EB/OL].[2013-12-03].http://jingyan.baidu.com/article/d5c4b52b32bb0dda560dc5a0.html.

[8]深海的小魚兒.PHP數(shù)組和Json之間的轉(zhuǎn)換[EB/OL].[2011-05-26].http://www.cnblogs.com/xmphoenix/archive/2011/05/26/2057963.html.

Development of the application system based on WeChat public platform

LU Weizhong1,2,ZHAO Yuxue1,ZHU Yunxiang1,XIN Li1
(1.School of Electronic&Information Engineering,SUST,Suzhou 215009,China;2.Institute of Computer Application Technology,SUST,Suzhou 215009,China)

This paper analyzed the tendency of mobile internet and application system development,and the architecture of WeChat public platform.We demonstrated in detail the methods of mobile application design based on WeChat public platform from the aspects of application modules and interface accesses.An app named“eactivity”was proposed to account for the course of mobile application development.

WeChat;WeChat platform;architecture;APP

TP393

A

1672-0687(2015)03-0047-05

責(zé)任編輯:艾淑艷

2014-06-07

江蘇省教育廳自然科學(xué)研究項(xiàng)目(08KJD510007);江蘇省大學(xué)生實(shí)踐創(chuàng)新訓(xùn)練計(jì)劃項(xiàng)目(201310332056X)

陸衛(wèi)忠(1964-),男,江蘇常熟人,副教授,碩士,研究方向:計(jì)算機(jī)控制網(wǎng)絡(luò)與嵌入式系統(tǒng),信息系統(tǒng)安全。

猜你喜歡
微信用戶功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
關(guān)于非首都功能疏解的幾點(diǎn)思考
微信
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
微信
微信
微信
如何獲取一億海外用戶
主站蜘蛛池模板: 又爽又大又黄a级毛片在线视频| 99久久精品国产综合婷婷| 国产精品区网红主播在线观看| 国产96在线 | 国产91全国探花系列在线播放| 99精品视频九九精品| 91精品国产自产在线观看| 美女内射视频WWW网站午夜 | 国产无人区一区二区三区| 欧美日韩在线亚洲国产人| 午夜啪啪福利| 一级一毛片a级毛片| 国产精品成| 91无码网站| 欧美日韩国产一级| 2048国产精品原创综合在线| 影音先锋亚洲无码| 婷婷色一区二区三区| 91伊人国产| 手机精品视频在线观看免费| 欧美亚洲欧美| 亚洲免费福利视频| 久草性视频| 四虎国产在线观看| 亚洲精品亚洲人成在线| 在线五月婷婷| 波多野结衣久久精品| 蜜臀av性久久久久蜜臀aⅴ麻豆| 九色综合伊人久久富二代| 四虎AV麻豆| 亚洲一区毛片| 高清视频一区| 精品人妻无码中字系列| 国产成人免费| 精品亚洲国产成人AV| 9啪在线视频| 91美女视频在线观看| 美女免费精品高清毛片在线视| 婷婷开心中文字幕| 亚洲国产午夜精华无码福利| 九色视频线上播放| 在线永久免费观看的毛片| 国产日韩欧美精品区性色| 最新国语自产精品视频在| 亚洲午夜18| 国产成人凹凸视频在线| 亚洲无码日韩一区| 国产哺乳奶水91在线播放| 在线看片国产| 国产人成在线观看| a亚洲天堂| 久久久久亚洲av成人网人人软件| 在线亚洲小视频| 亚洲成人免费看| 日韩一级毛一欧美一国产| 国产精品美人久久久久久AV| 亚洲色图欧美一区| 久久鸭综合久久国产| 无套av在线| 日本在线亚洲| 亚洲免费黄色网| 最新亚洲av女人的天堂| 国产在线一二三区| 99久久精品久久久久久婷婷| 色妞永久免费视频| 婷婷色在线视频| 精品撒尿视频一区二区三区| 亚洲精品手机在线| 中文字幕一区二区视频| 日韩无码黄色| 天堂成人在线| 国产亚洲男人的天堂在线观看| 亚洲最大综合网| 亚洲永久视频| 美女视频黄又黄又免费高清| 欧美成人一区午夜福利在线| 久久久国产精品无码专区| 91福利片| 72种姿势欧美久久久大黄蕉| 欧美色综合网站| 五月综合色婷婷| 日韩精品无码不卡无码|