javascript - 如果 API 结果发生变化,打印更新的信息
问题描述
我正在尝试在 JS 中构建一个简单的 Discord 机器人。机器人背后的逻辑是它调用 Udemy API 并抓取学生的问题。学生问题返回总计数。我希望我的 Discord 机器人在问题计数发生变化时打印出一条消息进行聊天。到目前为止,这是我的代码:
let checkUdemy = async () => {
let getUdemy = async () => {
let token = "xxxxxxxx";
let response = await axios.get(
"https://udemy.com/instructor-api/v1/taught-courses/questions/?page_size=1", {
headers: {
'Accept': 'application/json, text/plain, */*',
'Authorization': 'Bearer ' + token,
'Content-Type': 'application/json;charset=utf-8'
}
}
);
let qa = response.data;
return qa;
};
let qaValue = await getUdemy()
let count = qaValue.count;
};
checkUdemy();
var timerID = setInterval(checkUdemy, 60000);
目前,机器人每分钟检查一次 API。我可以将 count 的值存储在函数内部,但显然目前这对我没有好处。基本上,我希望将 count 的值存储为变量,如果它发生变化,那么机器人将打印 qaValue.message。我坚持这里的逻辑。
感谢您的帮助!
解决方案
我可能完全误解了这个问题,但我认为您正在寻找的是将函数外部的计数存储为全局变量。每次收到新计数时,都可以根据新计数进行检查,并将全局变量设置为新计数。随意澄清,因为我对问题似乎有点困惑。