0
所以我使用Mongoose的findOneAndUpdate來更新文檔中的鍵值。我需要將該數字加1。如果它不在那裏,它應該創建一個新文檔。它在Node中的後路由中。MongoDB:等待可用套接字掛起
我有信息去點擊按鈕後的路線。我的應用程序要求用戶連續多次單擊按鈕,並在瀏覽器底部獲得Waiting for available sockets...
,並且所有內容都會掛起。
我只是在我的本地主機上執行此操作。在曾經的一切「unhangs」的要求,我得到以下錯誤在我的控制檯的末尾: POST http://localhost:3000/api/songsqueued net::ERR_EMPTY_RESPONSE
這是佈線後我的工作:
router.post('/api/songsqueued', function(req, res){
Song.findOneAndUpdate({songId: req.body.songId}, { $inc:{queueTimes: 1} },
function(err, song){
if (err) {
return console.log("Error: " + err)
}
if(song){
song.queueTimes += 1;
song.save(function(err){
if(err){
console.log(err)
} else {
console.log("updated fam")
}
});
} else {
var song = new Song();
song.artistName = req.body.artistName;
song.titleName = req.body.titleName;
song.songId = req.body.songId;
song.songImg = req.body.songImg;
song.save(function(err) {
if (err) {
console.log("Error: " + err)
} else {
console.log("created fam")
}
})
console.log(song);
return res.json({message: "SongCreated"})
}
})
})
如何彌補任何想法這個?
您能向我們展示查詢以及設置響應的位置嗎? –
@ExplosionPills我編輯它以顯示我製作的POST路線 –
您只在創建新歌曲時設置響應;如果某首歌曲出現錯誤或更新,您不會發送回復 - 這是導致它掛起的原因 –