nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)

sufaith發表於2019-03-28

本專案旨在為多個微信公眾號提供中控服務, 包含以下服務內容:

  • 校驗後臺簽名配置
  • 處理微信公眾號訊息
  • 獲取access_token
  • 獲取jssdk簽名
  • 自定義選單

本專案採用的技術選型為:

  • 開發語言 nodejs
  • 開發框架 eggjs
  • 記憶體資料庫 redis

本篇文章主要從以下4個方面來實現這個中控服務:

  • eggjs外掛和配置
  • 定時任務獲取token等資訊
  • 路由定義和controller層接收並處理引數
  • service層實現

以下為具體的實現步驟:

一、eggjs外掛和配置

新增egg-redis和xml2js依賴庫, 並開啟egg-redis外掛

nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)
nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)

配置解析微信公眾號傳遞的xml資料

nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)

配置redis

nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)

配置多個微信公眾號的選單, appId, appSecret 以及 redis中accessToken和jssdk的key

nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)

二、定時任務獲取token等資訊

nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)

三、路由定義和controller層接收並處理引數

路由定義

nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)

controller層接收並處理引數

nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)
nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)

四、service層實現

nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)
nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)
nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)

extend/help.js檔案內容如下:

nodejs開發微信公眾號中控服務(處理訊息、獲取token及jssdk簽名、自定義選單)


福利: 本文已同步到我的個人技術網站 IT乾貨-sufaith 該網站包括Python, Linux, Nodejs, 前端開發等模組, 專注於程式開發中的技術、經驗總結與分享, 歡迎訪問.


相關文章