Nodejs 开发企业微信第三方应用 (一)
框架 :Egg.js
配置:
config/config.default.js
通用方法(SERVICE)结构
service/qywx
+ auths
- other.js
- suiteToken.js
+ user
- auth.js
auth.js
department.js
index.js
pushBack.js
receive.js
数据库设计 (MODEL)--mongodb
wework.js
wwtoken.js
jsapiTicket.js
任务 (schedule)
token_refresh.js
控制器 (controller)
+wework
+ callback
data.js
instruct.js
+ common
config.js
pushBack.js
路由 (router)
配置:
config/config.default.js
{
...
// 企业微信配置
config.weWork = {
'CorpID': '*',
'ProviderSecret': '*',
'Token': '*',
'EncodingAESKey': '*',
Saas: {
Apps: {
'suite_id': '*',
'suite_secret': '*-*-*',
'Token': '*',
'EncodingAESKey': '*'
}
}
};
...
}
通用方法(SERVICE)结构
service/qywx
+ auths
- other.js
- suiteToken.js
+ user
- auth.js
auth.js
department.js
index.js
pushBack.js
receive.js
数据库设计 (MODEL)--mongodb
wework.js
wwtoken.js
jsapiTicket.js
任务 (schedule)
token_refresh.js
控制器 (controller)
+wework
+ callback
data.js
instruct.js
+ common
config.js
pushBack.js
路由 (router)
// 注册页
router.get('index', '', controller.home.index);
// 登录页
router.get('login', '/login', controller.home.login);
// 安装页面
router.get('steup', '/steup', controller.home.steupApp);
router.resources('file', '/common/file', controller.common.files);
router.post('files', '/common/files', controller.common.files.creates);
// 服務器回調
router.get('weworkPushBack', '/wework/pushBack', controller.wework.pushBack.pushBack);
// 數據回調verifyUrl
router.get('rbData', '/wework/rb/data', controller.wework.callback.data.verifyUrl);
// 指令回調verifyUrl
router.get('rbInstructvf', '/wework/rb/instruct', controller.wework.callback.data.verifyUrl);
router.post('rbInstruct', '/wework/rb/instruct', controller.wework.callback.data.receive);