🐛 bug fix

This commit is contained in:
Song
2021-01-17 17:39:16 +08:00
parent d36680aea1
commit 3d70a3cb90
4 changed files with 56 additions and 13 deletions
+13 -7
View File
@@ -36,7 +36,7 @@ async function pushWeChatMessage(userPrefix, message) {
if (!user) {
return {
success: false,
message: `tokenStore 中不存在前缀${userPrefix}`,
message: `不存在前缀${userPrefix},请注意大小写`,
};
}
let access_token = user.token;
@@ -51,15 +51,21 @@ async function pushWeChatMessage(userPrefix, message) {
let requestUrl = `https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=${access_token}`;
try {
let response = await axios.post(requestUrl, request_data);
if (response && response.data && response.data.errcode === '40001') {
if (response && response.data && response.data.errcode !== 0) {
await requestToken(user.wechatAppId, user.wechatAppSecret);
await axios.post(requestUrl, request_data);
}
console.log(response.data);
return {
success: true,
message: '',
};
if (response.data.errcode === 0) {
return {
success: true,
message: 'ok',
};
} else {
return {
success: false,
message: response.data.errmsg,
};
}
} catch (e) {
console.error(e);
return {
+22 -5
View File
@@ -11,8 +11,13 @@ const {
const config = require('../config');
router.get('/', (req, res, next) => {
let showGuidance = false;
if (req.session.user && !req.session.user.wechatAppId) {
showGuidance = true;
}
res.render('index', {
message: req.flash('message'),
showGuidance,
});
});
@@ -67,15 +72,26 @@ router.post('/register', allowRegister, async (req, res, next) => {
username: req.body.username,
password: req.body.password,
};
let message = '';
try {
user = await User.create(user);
message = '用户创建成功,请登录';
req.flash('message', message);
return res.redirect('/login');
} catch (e) {
console.error(e);
message = '用户名已被占用';
}
res.render('register', { message, isErrorMessage: true });
});
router.get('/configure', userRequired, (req, res, next) => {
let showPasswordWarning = false;
if (req.session.user && req.session.user.password === '123456') {
showPasswordWarning = true;
}
res.locals.message = req.flash('message');
res.locals.showPasswordWarning = true;
res.render('configure', req.session.user);
});
@@ -114,14 +130,15 @@ router.post('/configure', userRequired, async (req, res, next) => {
}
req.session.user = userObj;
tokenStore.set(userObj.prefix, {
appId: userObj.wechatAppId,
appSecret: userObj.wechatAppSecret,
templateId: userObj.wechatTemplateId,
openId: userObj.wechatOpenId,
wechatAppId: userObj.wechatAppId,
wechatAppSecret: userObj.wechatAppSecret,
wechatTemplateId: userObj.wechatTemplateId,
wechatOpenId: userObj.wechatOpenId,
wechatVerifyToken: userObj.wechatVerifyToken,
token: requestToken(userObj.wechatAppId, userObj.wechatAppSecret),
token: await requestToken(userObj.wechatAppId, userObj.wechatAppSecret),
});
message = '配置更新成功';
console.debug(tokenStore);
} catch (e) {
console.error(e);
message = e.message;
+11 -1
View File
@@ -4,6 +4,16 @@
<div>
<h2 class="title">配置页面</h2>
<%- include('./partials/message') %>
<% if(showPasswordWarning) { %>
<article class="message is-warning">
<div class="message-header">
<p>警告</p>
</div>
<div class="message-body">
你正在使用的密码是默认密码,请尽快修改!
</div>
</article>
<% }%>
<form action="/configure" method="post">
<div class="field">
<label class="label">APP ID</label>
@@ -48,7 +58,7 @@
</div>
</article>
<div class="control">
<input class="input" name="prefix" value="<%- prefix %>" type="text" placeholder="请输入你的 TOKEN">
<input class="input" name="prefix" value="<%- prefix ? prefix : username %>" type="text" placeholder="请输入你的前缀">
</div>
</div>
+10
View File
@@ -1,6 +1,16 @@
<%- include('./partials/header') %>
<div class="normal-container">
<%- include('./partials/message') %>
<% if(showGuidance) { %>
<article class="message is-warning">
<div class="message-header">
<p>系统尚未完成配置</p>
</div>
<div class="message-body">
点击<a href="/configure">此处</a>访问配置页面,如需帮助,请点击上方帮助按钮。
</div>
</article>
<% }%>
<article class="message is-light">
<div class="message-header">
<p>系统状况</p>