修复通知文件换行符解析错误

This commit is contained in:
whyour 2024-09-09 23:19:58 +08:00
parent ff98c3a499
commit 926ad067c1
2 changed files with 27 additions and 23 deletions

View File

@ -1143,14 +1143,20 @@ function webhookNotify(text, desp) {
WEBHOOK_CONTENT_TYPE, WEBHOOK_CONTENT_TYPE,
WEBHOOK_METHOD, WEBHOOK_METHOD,
} = push_config; } = push_config;
if (!WEBHOOK_URL.includes('$title') && !WEBHOOK_BODY.includes('$title')) { if (
!WEBHOOK_METHOD ||
!WEBHOOK_URL ||
(!WEBHOOK_URL.includes('$title') && !WEBHOOK_BODY.includes('$title'))
) {
resolve(); resolve();
return; return;
} }
const headers = parseHeaders(WEBHOOK_HEADERS); const headers = parseHeaders(WEBHOOK_HEADERS);
const body = parseBody(WEBHOOK_BODY, WEBHOOK_CONTENT_TYPE, (v) => const body = parseBody(WEBHOOK_BODY, WEBHOOK_CONTENT_TYPE, (v) =>
v?.replaceAll('$title', text)?.replaceAll('$content', desp), v
?.replaceAll('$title', text?.replaceAll('\n', '\\n'))
?.replaceAll('$content', desp?.replaceAll('\n', '\\n')),
); );
const bodyParam = formatBodyFun(WEBHOOK_CONTENT_TYPE, body); const bodyParam = formatBodyFun(WEBHOOK_CONTENT_TYPE, body);
const options = { const options = {
@ -1162,27 +1168,23 @@ function webhookNotify(text, desp) {
retry: 1, retry: 1,
}; };
if (WEBHOOK_METHOD) { const formatUrl = WEBHOOK_URL.replaceAll(
const formatUrl = WEBHOOK_URL.replaceAll( '$title',
'$title', encodeURIComponent(text),
encodeURIComponent(text), ).replaceAll('$content', encodeURIComponent(desp));
).replaceAll('$content', encodeURIComponent(desp)); got(formatUrl, options).then((resp) => {
got(formatUrl, options).then((resp) => { try {
try { if (resp.statusCode !== 200) {
if (resp.statusCode !== 200) { console.log(`自定义发送通知消息失败😞 ${resp.body}\n`);
console.log(`自定义发送通知消息失败😞 ${resp.body}\n`); } else {
} else { console.log(`自定义发送通知消息成功🎉 ${resp.body}\n`);
console.log(`自定义发送通知消息成功🎉 ${resp.body}\n`);
}
} catch (e) {
$.logErr(e, resp);
} finally {
resolve(resp.body);
} }
}); } catch (e) {
} else { $.logErr(e, resp);
resolve(); } finally {
} resolve(resp.body);
}
});
}); });
} }

View File

@ -852,7 +852,9 @@ def custom_notify(title: str, content: str) -> None:
body = parse_body( body = parse_body(
WEBHOOK_BODY, WEBHOOK_BODY,
WEBHOOK_CONTENT_TYPE, WEBHOOK_CONTENT_TYPE,
lambda v: v.replace("$title", title).replace("$content", content), lambda v: v.replace("$title", title.replace("\n", "\\n")).replace(
"$content", content.replace("\n", "\\n")
),
) )
formatted_url = WEBHOOK_URL.replace( formatted_url = WEBHOOK_URL.replace(
"$title", urllib.parse.quote_plus(title) "$title", urllib.parse.quote_plus(title)