您好,登錄后才能下訂單哦!
這篇“如何接入微信小程序消息服務”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“如何接入微信小程序消息服務”文章吧。
接入微信小程序消息服務,開發者需要按照如下步驟完成:
1、填寫服務器配置
2、驗證服務器地址的有效性
3、依據接口文檔實現業務邏輯
下面詳細介紹這3個步驟。
第一步:填寫服務器配置
登錄微信小程序官網后,在小程序官網的“設置-消息服務器”頁面,管理員掃碼啟用消息服務,填寫服務器地址(URL)、Token 和 EncodingAESKey。
URL是開發者用來接收微信消息和事件的接口URL。Token可由開發者可以任意填寫,用作生成簽名(該Token會和接口URL中包含的Token進行比對,從而驗證安全性)。EncodingAESKey由開發者手動填寫或隨機生成,將用作消息體加解密密鑰。
同時,開發者可選擇消息加解密方式:明文模式、兼容模式和安全模式。可以選擇消息數據格式:XML格式或JSON格式。加密方式的默認狀態是明文格式,而數據格式的默認狀態是XML格式。
模式的選擇與服務器配置在提交后都會立即生效,請開發者謹慎填寫及選擇。切換加密方式和數據格式需要提前配置好相關代碼,
第二步:驗證消息的確來自微信服務器
開發者提交信息后,微信服務器將發送GET請求到填寫的服務器地址URL上,GET請求攜帶參數如下表所示:
參數 | 描述 |
---|---|
signature | 微信加密簽名,signature結合了開發者填寫的token參數和請求中的timestamp參數、nonce參數。 |
timestamp | 時間戳 |
nonce | 隨機數 |
echostr | 隨機字符串 |
開發者通過檢驗signature對請求進行校驗(下面有校驗方式)。若確認此次GET請求來自微信服務器,請原樣返回echostr參數內容,則接入生效,成為開發者成功,否則接入失敗。加密/校驗流程如下:1、將token、timestamp、nonce三個參數進行字典序排序;2、將三個參數字符串拼接成一個字符串進行sha1加密;3、開發者獲得加密后的字符串可與signature對比,標識該請求來源于微信
檢驗signature的PHP示例代碼:
private function checkSignature(){ $signature = $_GET["signature"]; $timestamp = $_GET["timestamp"]; $nonce = $_GET["nonce"]; $token = TOKEN; $tmpArr = array($token, $timestamp, $nonce); sort($tmpArr, SORT_STRING); $tmpStr = implode( $tmpArr ); $tmpStr = sha1( $tmpStr );if( $tmpStr == $signature ){return true; }else{return false; } }
第三步:依據接口文檔實現業務邏輯
驗證URL有效性成功后即接入生效,成為開發者。至此用戶向小程序客服發送消息、或者進入會話等情況時,開發者填寫的服務器配置URL將得到微信服務器推送過來的消息和事件,開發者可以依據自身業務邏輯進行響應。
另請注意,開發者所填寫的URL必須以 http:// 或 https:// 開頭,分別支持80端口和443端口。
以上就是關于“如何接入微信小程序消息服務”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。