本篇文章為大家展示了微信公眾號中被動消息回復(fù)的原理是什么,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
10年積累的網(wǎng)站設(shè)計制作、成都網(wǎng)站設(shè)計經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先做網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有三河免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
技術(shù)實現(xiàn):開發(fā)者服務(wù)器--基于Angular2框架的已發(fā)布網(wǎng)站,編程語言為Python,后臺存儲數(shù)據(jù)庫為MySQL;
微信服務(wù)器--微信公眾號,此業(yè)務(wù)只是處理微信客戶端發(fā)送的文本信息,且不使用公眾號的其他功能,因此不需要認證公眾號;
微信客戶端--關(guān)注公眾號的微信使用者,即粉絲。
當粉絲給公眾號發(fā)送特定的消息時,微信公眾號自動回復(fù)相應(yīng)內(nèi)容,而其背后的實現(xiàn)原理可由下圖所示:
由上圖可知,粉絲(微信客戶端)向公眾號(微信服務(wù)器)發(fā)送消息后,公眾號馬上將消息報文轉(zhuǎn)發(fā)給綁定的網(wǎng)站(開發(fā)者服務(wù)器),此時消息
傳送到了開發(fā)者的系統(tǒng)里。然后系統(tǒng)解析消息報文,得到消息內(nèi)容,再根據(jù)消息內(nèi)容,從業(yè)務(wù)數(shù)據(jù)庫中得到返回的消息文本,最終將消息文本包裝
成回復(fù)的消息報文(xml),返回給公眾號,公眾號再發(fā)送給請求的粉絲。
消息報文: 微信服務(wù)器轉(zhuǎn)發(fā)的消息報文格式如下:
![DATA[toUser]] // 接收消息方,開發(fā)者微信號(公眾號AppID)![DATA[fromUser]] //發(fā)送方賬號(OpenId)12356548575 //消息創(chuàng)建時間![DATA[text]] //消息類型,text代表文本類型![DATA[?18-546]] //消息內(nèi)容,本例為 ?18-5461234567890123456 //消息ID
開發(fā)者服務(wù)器通過解析轉(zhuǎn)發(fā)的消息報文,得到發(fā)送方賬號(回復(fù)消息用)和消息內(nèi)容,然后通過一系列業(yè)務(wù)處理,生成回復(fù)消息報文,格式如下:
![DATA[userName]] //接收消息方,微信客戶端賬號(OpenId)![DATA[fromUser]] // 發(fā)送方賬號,(公眾號AppID)456251484 //消息創(chuàng)建時間![DATA[text]] //回復(fù)的消息類型,text代表文本消息![[[18-546]的工作臺位為[車體新廠房3號]]] //回復(fù)的消息內(nèi)容,本例為[18-546]的工作臺位為[車體新廠房3號]
微信服務(wù)器接收到回復(fù)的消息報文后,通過解析,將內(nèi)容發(fā)送給微信客戶端,這樣客戶端接收到信息了。
注意事項: 1、開發(fā)服務(wù)器自接收到轉(zhuǎn)發(fā)的消息后,需要再5秒內(nèi)給予回復(fù),超過時間,則自動回復(fù)錯誤提示消息"該公眾號提供的服務(wù)出現(xiàn)故障,請稍后再試",
因此,業(yè)務(wù)處理時間最好不要大于5秒鐘;
2、回復(fù)消息內(nèi)容應(yīng)遵從公眾號信息內(nèi)容的設(shè)定,最好不要回復(fù)帶空格的消息,因為會出現(xiàn)不能正常回復(fù)的現(xiàn)象。
上述內(nèi)容就是微信公眾號中被動消息回復(fù)的原理是什么,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。