明树Git Lab

Commit 708d7635 authored by zfp1's avatar zfp1

update

parent f3821347
...@@ -23,6 +23,7 @@ app.get('/wechat', (req, res) => { ...@@ -23,6 +23,7 @@ app.get('/wechat', (req, res) => {
sha1 === signature ? res.send(echostr) : res.status(403).send(' 验证失败'); sha1 === signature ? res.send(echostr) : res.status(403).send(' 验证失败');
}); });
const msgIdCache = new Set();
// 消息处理流程 // 消息处理流程
app.post('/wechat', async (req, res) => { app.post('/wechat', async (req, res) => {
// try { // try {
...@@ -30,6 +31,12 @@ app.post('/wechat', async (req, res) => { ...@@ -30,6 +31,12 @@ app.post('/wechat', async (req, res) => {
const result = await xml2js.parseStringPromise(req.body); const result = await xml2js.parseStringPromise(req.body);
const message = result.xml.Content[0]; const message = result.xml.Content[0];
const fromUser = result.xml.FromUserName[0]; const fromUser = result.xml.FromUserName[0];
const MsgId = result.xml.MsgId[0];
if (msgIdCache.has(MsgId)) {
return res.send(''); // 拦截重复请求
}
msgIdCache.add(MsgId);
console.log(message, "------------------") console.log(message, "------------------")
// API调用 [5]() // API调用 [5]()
const completion = await openai.chat.completions.create({ const completion = await openai.chat.completions.create({
...@@ -65,7 +72,7 @@ app.post('/wechat', async (req, res) => { ...@@ -65,7 +72,7 @@ app.post('/wechat', async (req, res) => {
<xml> <xml>
<ToUserName><![CDATA[${fromUser}]]></ToUserName> <ToUserName><![CDATA[${fromUser}]]></ToUserName>
<FromUserName><![CDATA[${result.xml.ToUserName[0]}]]></FromUserName> <FromUserName><![CDATA[${result.xml.ToUserName[0]}]]></FromUserName>
<CreateTime>${Math.floor(Date.now()/1000)}</CreateTime> <CreateTime>${Math.floor(Date.now() / 1000)}</CreateTime>
<MsgType><![CDATA[text]]></MsgType> <MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[${fullContent}]]></Content> <Content><![CDATA[${fullContent}]]></Content>
</xml> </xml>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment