2023-12-07 分類: 網站建設
微信公眾平臺提供的界面很簡單,我們來看看消息交互過程:
通俗的講,用戶使用微信發送消息->微信給開發者發送數據->開發者處理消息并返回數據給微信->微信將返回的數據發送給用戶,其間數據交互是通過 XML 完成的。就這么簡單。
下面寫一個例子來開發一個微信智能聊天機器人:
1.注冊微信公眾平臺賬號
微信公眾平臺:
注意:目前一張身份證只能注冊兩個賬號。賬號名與V認證相關。請謹慎注冊。
2.申請服務器/虛擬主機
沒有服務器/虛擬主機的童鞋可以使用bAE和SAE,不多介紹。
3.開啟開發者模式
微信公眾平臺有兩種模式,一種是編輯模式(傻瓜模式),簡單但功能單一。另一種是開發者模式,可以通過開發實現復雜的功能。這兩種模式是相互排斥的。顯然,登錄微信公眾平臺,通過“高級功能”菜單開啟開發者模式。
4.填寫接口配置信息
也是在“ ”菜單中配置的,需要配置兩個參數:
URL:開發者應用訪問地址,目前僅支持80端口,以“”為例。
:隨意填寫,用于生成簽名,以“”為例。
填寫完成后,將以下代碼另存為.php并上傳到目錄,最后點擊“提交”完成驗證。
valid(); class wechat { public function valid() { $echoStr = $_GET["echostr"]; if($this->checkSignature()){ echo $echoStr; exit; } } private function checkSignature() { $signature = $_GET["signature"]; $timestamp = $_GET["timestamp"]; $nonce = $_GET["nonce"]; $token = TOKEN; $tmpArr = array($token, $timestamp, $nonce); sort($tmpArr); $tmpStr = implode( $tmpArr ); $tmpStr = sha1( $tmpStr ); if( $tmpStr == $signature ) { return true; } else { return false; } } } ?>
這個東西就是微信公眾平臺驗證網址是否被正確訪問。研究代碼沒有實質性意義。確認無誤后,即可刪除該文件。它不會詳細解釋。對童鞋感興趣的可以查看官方文檔。
微信公眾平臺ApI文檔:
5.微信公眾平臺功能開發
好的,如上所述,微信公眾平臺和開發者之間的數據交互是通過XML來完成的。既然用了XML微信公眾平臺開發 php,當然要遵循規范,所以在著手開發規范之前,先看看官方接口文檔提供的XML,以短信為例:
當用戶向微信公眾號發送消息時,微信服務器會pOST一些數據給開發者:
開發者處理消息后需要將數據返回給微信服務器:
微信公眾平臺除了短信之外,還支持用戶發送圖片信息、地理位置信息、鏈接信息、事件推送。開發者也可以在微信公眾平臺回復音樂消息和圖文消息。各種消息的XML規范也可以參考官方文檔。
來看一個官方的pHp例子,我做了一些簡化:
responseMsg(); class wechat { public function responseMsg() { //---------- 接 收 數 據 ---------- // $postStr = $GLObALS["HTTp_RAW_pOST_DATA"]; //獲取pOST數據 //用SimpleXML解析pOST過來的XML數據 $postObj = simplexml_load_string($postStr,'SimpleXMLElement',LIbXML_NOCDATA); $fromUsername = $postObj->FromUserName; //獲取發送方帳號(OpenID) $toUsername = $postObj->ToUserName; //獲取接收方賬號 $keyword = trim($postObj->Content); //獲取消息內容 $time = time(); //獲取當前時間戳 //---------- 返 回 數 據 ---------- // //返回消息模板 $textTpl = "%s0"; $msgType = "text"; //消息類型 include('simsimi.php'); $contentStr = simsimi($keyword); //返回消息內容 //格式化消息模板 $resultStr = sprintf($textTpl,$fromUsername,$toUsername,$time,$msgType,$contentStr); echo $resultStr; //輸出結果 } } ?>
將代碼保存為 .php 并上傳到目錄。如果剛才沒有刪除文件,會被覆蓋。
現在用戶通過微信公眾平臺發送任何消息時,公眾號都會返回一條內容為“”的消息。
接下來要做的是根據用戶的消息動態返回結果~
(小黃雞)目前是一個熱門聊天機器人。我使用 CURL 開發了一個免費的(小黃雞)界面。輸入關鍵字將返回文本響應。這部分不是本文的重點,不再贅述。 ,直接上傳代碼(2014.07.28更新):
將以上兩段代碼整合在一起微信公眾平臺開發 php,就大功告成了。需要說明的是,微信服務器如果在5秒內沒有收到響應,就會斷開連接,可能通過這個接口超時,bAE和SAE已經被阻塞了。對于爬取請求,建議使用官方付費ApI,速度更快~
希望這篇文章對大家開發基于php的微信公眾平臺有幫助。
本文名稱:微信公眾平臺提供的接口很簡單,先看看消息交互流程
轉載來源:http://m.newbst.com/news27/299777.html
成都網站建設公司_創新互聯,為您提供用戶體驗、電子商務、靜態網站、網站排名、網站收錄、小程序開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯
猜你還喜歡下面的內容