Javascript Firebase和Express,每次更改Firebase的值时,我的api都会发送重复的响应

Javascript Firebase和Express,每次更改Firebase的值时,我的api都会发送重复的响应,javascript,node.js,firebase,express,firebase-realtime-database,Javascript,Node.js,Firebase,Express,Firebase Realtime Database,我是express js的初学者,我从express和firebase为我的音乐应用程序制作了api,它从firebase获取数据,并将请求和发送数据作为响应。但有一个问题正在扰乱这个计划。每次firebase的值(查看音乐)更改时,它都会重新发送相同的响应 这是我的密码 app.use(cors()) 让trendingTracks=[] 让数据; 功能趋势分析(数据){ 如果(数据){ Object.values(数据).forEach((值)=>{ 如果(value.views{ res

我是express js的初学者,我从express和firebase为我的音乐应用程序制作了api,它从firebase获取数据,并将请求和发送数据作为响应。但有一个问题正在扰乱这个计划。每次firebase的值(
查看
音乐)更改时,它都会重新发送相同的响应

这是我的密码

app.use(cors())
让trendingTracks=[]
让数据;
功能趋势分析(数据){
如果(数据){
Object.values(数据).forEach((值)=>{
如果(value.views<10){
趋势跟踪。推送(值)
}
})
}
}
函数SortPopular(a){
for(设i=0;i{
data=snapshot.val();
趋势分析(数据)
})
app.get(“/api/home/trending”,(请求、回复)=>{
res.send(SortPopular(趋势跟踪))
})

app.listen(4000,()=>console.log(“在端口4000处侦听…”)
我看不到您的全部代码,所以我不能100%确定,但我怀疑这是因为您不断向
trendingtrack
添加项目,但每次运行
Trending
功能时都需要清除它

因此,添加
trendingTracks=[]
,如下所示:

app.use(cors())
让trendingTracks=[]
让数据;
功能趋势分析(数据){
如果(数据){
trendingTracks=[]//新建
Object.values(数据).forEach((值)=>{
如果(value.views<10){
趋势跟踪。推送(值)
}
})
}
}
函数SortPopular(a){
for(设i=0;i{
data=snapshot.val();
趋势分析(数据)
})
app.get(“/api/home/trending”,(请求、回复)=>{
res.send(SortPopular(趋势跟踪))
})

我很高兴这有帮助!请接受我的解决方案(单击投票按钮下方的勾号)。谢谢!:)好的,我接受3minOn堆栈溢出,请不要显示文本和代码的图片。将文本复制到问题本身,并将其格式化,以便易于阅读、复制和搜索。您可以使用底部的编辑链接编辑问题以更正此问题。