簡體   English   中英

Ajax獲取請求在5次調用后沒有得到響應

[英]Ajax get request not getting response after 5 calls

我試圖通過ajax get請求從mongodb服務器獲取一些信息到前端。 一切正常,但如果我嘗試調用5次javascript函數,我不會從我的本地服務器得到任何響應。

我試着把一些console.log()為了在nodejs函數中調試,看來我第6次調用這個函數,nodejs函數甚至沒有運行。

javascript ajax前端代碼:


function addLike(music){

     var request = new XMLHttpRequest();

     request.open('POST', '/AddLike', true);
     request.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
     var myobj = {"music": music};
     request.send(JSON.stringify(myobj));

     setTimeout(function(){

        $.ajax({
          url: "/getAll",
          type: 'GET',
          dataType: 'json', // added data type
          success: function(res) {
            // => the 6th time i launch addLike(music), the function doesn't go there
             update(res);
          }
    });

     }, 200);

} 

nodejs函數:


app.get("/getAll", function(req, res){

    var MongoClient = require('mongodb').MongoClient;
    var url = "mongodb://localhost:27017/";

    MongoClient.connect(url, { useNewUrlParser: true }, function(err, db) {
        if (err) throw err;

        var dbo = db.db("SoundShare");

        var tab = dbo.collection('Musique');

        tab.find({}).toArray(function(err2, result) { 
            if (err2) throw err2;

            res.send(JSON.stringify(result));

            db.close();

        });
    });
});

正如你在下面的圖片中看到的,在firefox的控制台中,最后一次獲取ajax請求沒有收到任何響應。

有效的XHTML 有效的XHTML

它似乎是服務器端問題,但我不明白如何解決它。

提前感謝您的回答。

您的問題是您在/ getAll函數中創建了一個新連接,默認的poolize是5,正如您在文檔中看到的那樣。

您應該在node.js應用程序啟動時創建連接,並在整個應用程序中使用該連接,而不是在每個請求上創建新連接。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM