Files
message-pusher/utils/wechat.js
T

37 lines
1.1 KiB
JavaScript
Raw Normal View History

2020-09-01 16:28:09 +08:00
const axios = require("axios");
module.exports = {
requestToken: function (app) {
let token = "";
axios
.get(
`https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=${process.env.APP_ID}&secret=${process.env.APP_SECRET}`
)
.then((res) => {
if (res.data && res.data.access_token) {
2020-09-01 19:27:16 +08:00
console.log("Token requested.");
2020-09-01 16:28:09 +08:00
token = res.data.access_token;
2020-09-05 13:59:38 +08:00
app.locals.access_token = token;
2020-09-13 23:50:16 +08:00
process.env.access_token = token;
2020-09-01 16:28:09 +08:00
} else {
console.error(res.data);
}
});
return token;
},
2020-09-01 20:06:41 +08:00
2020-09-13 23:50:16 +08:00
pushWeChatMessage: function (description, link) {
2020-09-01 20:06:41 +08:00
// Reference: https://mp.weixin.qq.com/debug/cgi-bin/readtmpl?t=tmplmsg/faq_tmpl
2020-09-13 23:50:16 +08:00
let access_token = process.env.access_token;
2020-09-01 20:06:41 +08:00
let request_data = {
touser: process.env.OPEN_ID,
template_id: process.env.TEMPLATE_ID,
};
2020-09-13 23:50:16 +08:00
request_data.data = { text: { value: description } };
return axios.post(
`https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=${access_token}`,
request_data
);
2020-09-01 20:06:41 +08:00
},
2020-09-01 16:28:09 +08:00
};