本人前端渣渣一枚,這篇文章是第一次寫,如果有硬核bug,請大佬們輕噴、指出... 另外,本文不涉及任何接口安全、參數校驗之類的東西,默認對調用方無腦級的信任:joy: 目前自用的接口包括但不限于以下這些
|--- 微信相關| |--- 0. 處理微信推過來的一些消息| |--- 1. 獲取微信SDK配置參數| |--- 2. 微信鑒權登陸| |--- 3. 獲取微信用戶信息| |--- 4. 獲取AccessToken| |--- 5. 批量發送模版消息| |--- 6. 獲取模版消息列表| |--- 7. 批量發送客服消息
背景
【需求】小項目很多很雜,而且大部分需求都是基于微信開發的,每次都查微信文檔的話就會很郁悶:unamused:... 【號多】公眾號超級多,項目中偶爾會涉及借權獲取用戶信息(在不綁定微信開放平臺的前提下,需要臨時自建各個公眾號的openid關聯關系),類似這樣同時需要不止一個公眾號配合來完成一件事的需求,就容易把人整懵逼... 【支付】微信支付的商戶號也很多,而且有時候支付需要用的商戶號,還不能用關聯的公眾號取出來的openid去支付... 【官方】微信官方文檔建議!把獲取AccessToken等微信API抽離成單獨的服務... 等等等等........所以...:joy:創建ThinkJS項目
官網
thinkjs.org/
簡介
ThinkJS 是一款面向未來開發的 Node.js 框架,整合了大量的項目最佳實踐,讓企業級開發變得如此簡單、高效。從 3.0 開始,框架底層基于 Koa 2.x 實現,兼容 Koa 的所有功能。
安裝腳手架
$ npm install -g think-cli
創建及啟動項目
$ thinkjs new demo;$ cd demo;$ npm install; $ npm start;
目錄結構
|--- development.js //開發環境下的入口文件|--- nginx.conf //nginx 配置文件|--- package.json|--- pm2.json //pm2 配置文件|--- production.js //生產環境下的入口文件|--- README.md|--- src| |--- bootstrap //啟動自動執行目錄 | | |--- master.js //Master 進程下自動執行| | |--- worker.js //Worker 進程下自動執行| |--- config //配置文件目錄| | |--- adapter.js // adapter 配置文件 | | |--- config.js // 默認配置文件 | | |--- config.production.js //生產環境下的默認配置文件,和 config.js 合并 | | |--- extend.js //extend 配置文件 | | |--- middleware.js //middleware 配置文件 | | |--- router.js //自定義路由配置文件| |--- controller //控制器目錄 | | |--- base.js| | |--- index.js| |--- logic //logic 目錄| | |--- index.js| |--- model //模型目錄| | |--- index.js|--- view //模板目錄| |--- index_index.html
安裝think-wechat插件
介紹
微信中間件,基于 node-webot/wechat,支持 thinkJS 3.0
安裝
$ npm install think-wechat --save
新聞熱點
疑難解答