Node.JS呼叫企業微信API:自建應用的回撥事件
實現環境:
白碼低程式碼平臺(該平臺提供企業微信API,可直接呼叫,減少前期配置除錯工作)
平臺語言:
使用node.js開發
準備工作:
準備一個企業微信管理員賬號
-
企業微信官方API: https://work.weixin.qq.com/api/doc/90000/90135/90237
-
白碼使用的API庫:
實現步驟:
1、選擇企業微信回撥介面模板建立webhook,並將 webhook路徑複製。
2、開啟企業微信後臺,在自建應用詳情頁,點選“接收訊息”的“ 設定API接收”按鈕,進入配置頁面。將複製的webhook路徑復貼上到url中,按要求填寫 Token(可由企業任意填寫,用於生成簽名。)及 EncodingAESKey(用於訊息體的加密,是AES金鑰的Base64編碼。),加密說明: https://work.weixin.qq.com/api/doc/90000/90135/90238
3、在客戶聯絡的“客戶>api>接收事件伺服器”中設定相同內容(三個引數保持一致)。
4、在白碼平臺 配置webhook的引數:corpid(我的企業->企業id)、corpsecret(自建應用secret)、token、aesKey(即EncodingAESKey)
5、回撥程式碼
async function hook($req, $resp, $modules = modules) { //get 請求用於驗證有效性 if ($req.method == "GET") { /** * 企業收到訊息後,需要作如下處理: * 1、對msg_signature進行校驗 * 2、解密Encrypt,得到明文的訊息結構體(訊息結構體後面章節會詳說) * 3、如果需要被動回覆訊息,構造被動響應包 * 4、正確響應本次請求 * 以上1~2步驟可以直接使用解密函式一步到位。 * 3步驟其實包含加密被動回覆訊息、生成新簽名、構造被動響應包三個步驟,可以直接使用加密函式一步到位。 */ $resp.body = await modules.wxworkApi.getVerifyMsg($req);//處理已封裝,可直接呼叫 } else if ($req.method == "POST") { //無法保證在五秒內處理完成,先回復(企業微信伺服器在五秒內收不到響應會斷掉連線) $resp.body = "success"; //處理 let handle = async () => { //將資料轉換成json let data = await modules.wxworkApi.getMsgData($req); if (data.Event == "change_contact" && data.ChangeType == "create_party") { /**新增部門 */ //TODO 處理新增部門事件 } else if (data.Event == "change_contact" && data.ChangeType == "update_party") {/**修改部門 */ //TODO 處理修改部門事件 } else if (data.Event == "change_contact" && data.ChangeType == "delete_party") { /**刪除部門 */ //TODO 處理刪除部門事件 } else if (data.Event == "change_contact" && data.ChangeType == "create_user") { /**新增成員 */ //TODO 處理新增成員事件 } else if (data.Event == "change_contact" && data.ChangeType == "update_user") {/**修改成員 */ //TODO 處理修改成員事件 } else if (data.Event == "change_contact" && data.ChangeType == "delete_user") { /**刪除成員 */ //TODO 處理刪除成員事件 } else if (data.Event == "change_external_contact" && data.ChangeType == "add_external_contact") {/**新增客戶事件*/ //TODO 處理新增外部聯絡人事件 } else if (data.Event == "change_external_contact" && data.ChangeType == "edit_external_contact") {/**編輯客戶事件(標籤等資訊) */ //TODO 處理編輯外部聯絡人備註標籤資訊事件 } else if (data.Event == "change_external_contact" && data.ChangeType == "del_external_contact") { /**刪除客戶事件*/ //TODO 處理刪除外部聯絡人事件 } handle() } }
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69981626/viewspace-2716889/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- .NET Core 企業微信回撥配置
- Node.JS呼叫企業微信API:生成渠道二維碼Node.jsAPI
- 企業微信API:按鈕互動型通知+資料回撥API
- Node.JS呼叫企業微信API:成員的增刪查改Node.jsAPI
- 企業微信自建應用開發-免密登入
- 【詳細、開箱即用】.NET企業微信回撥配置(資料回撥URL和指令回撥URL驗證)
- golang實現企業微信API,以第三方服務商角度整理的API,支援手動生成企業微信新API或新回撥程式碼GolangAPI
- 在企業微信自建應用整合及安裝第三方應用的超快速方法
- 企業微信sdk呼叫,企業微信好友收發訊息
- 企業微信-自建H5應用授權登入獲取使用者資訊H5
- 微信商戶 API 企業付款!API
- 企業微信API使用基本教程API
- 微信小程式開發系列六:微信框架API的呼叫微信小程式框架API
- 基於Guava API實現非同步通知和事件回撥GuavaAPI非同步事件
- ionic4 開發企業微信應用0
- Android 微信分享後留在微信,沒有回撥的問題解決方案Android
- 企業微信:已有數百萬企業,用企業微信為微信裡2.5億使用者提供服務
- 微博回撥介面
- 企業微信PC版hook原始碼api介面Hook原始碼API
- Spring Security整合企業微信的掃碼登入,企微的API震驚到我了SpringAPI
- 埃森哲:跳出微信企業應用三大誤區
- 使用 laravel-wechat-notification 傳送微信模板訊息、企業微信應用訊息Laravel
- uniapp開發企業微信應用中的定位問題記錄APP
- Swoole 回撥函式的註冊與呼叫函式
- 新移動框架中企業自建應用的來源是【移動輕應用管理】框架
- 關於Yii2 微信支付回撥地址處理
- ASP.NET CORE微信支付回撥示例程式碼ASP.NET
- Python實現微信電腦版微信支付收款監聽及支付回撥通知Python
- 微信小程式學習總結02:封裝api請求(處理非同步api回撥地獄的一種方案)微信小程式封裝API非同步
- 接入企業微信
- 藉助雲託管低成本部署企業微信應用
- pc企業微信hook介面,企業微信行銷軟體Hook
- 企業微信如何管理微信客戶
- 前端自定義類事件回撥封裝前端事件封裝
- 微信小程式如何響應使用者點選事件和微信平臺 API 的使用方法介紹微信小程式事件API
- 用node.js實現在企業微信設定成員個性化歡迎語Node.js
- OpenAI Assistants API 企業級應用實戰OpenAIAPI
- 淺析微信支付:申請退款、退款回撥介面、查詢退款