簡體   English   中英

mongoDB connect(通過Node.js驅動程序)不會給我控制台日志消息

[英]mongoDB connect (via Node.js driver) doesn't give me console log msg

我在server.js文件上有這個代碼。 我想連接到這個mongoDB數據庫,然后獲得一個控制台日志指示。

但是,沒有用於數據庫連接的控制台日志消息(對於服務器,我獲取日志消息)。 我甚至沒有收到錯誤消息,只有一條消息到控制台日志,http已連接(數據庫上沒有任何內容)。

為什么? 我的代碼謝謝

server.js

var express = require('express');
var app = express();
var http = require('http').Server(app); 
var io = require('socket.io')(http);
var path = require('path');
var MongoClient = require('mongodb').MongoClient;
var assert = require('assert');

 //more code that is not relevant



var url = 'mongodb://1.0.0.127:4444/small-talkz';

MongoClient.connect(url, function(err, db) {
    console.log("Connected correctly to DB.");
    db.close();
});

http.listen((process.env.PORT || 3000), function(){
    console.log('listening on *:3000 '+ __dirname);
});

如Node.js驅動程序的文檔中所述,每次重試之間的默認重試次數為5和5000 ms。 因此,在回調中實際出現錯誤之前,您必須等待一段時間。 由於您當前沒有將錯誤寫入console ,因此您將看不到錯誤,但由於訪問db而獲得錯誤,然后該數據為null

將其更改為

MongoClient.connect(url, function(err, db) { 
    if (err) {
        console.log(err);
    }
    else {
        console.log("Connected correctly to DB.");
        db.close();
    }
});

等一下,你會看到錯誤。 或者,減少重試次數或每次重試之間的延遲,以便更快地看到它失敗:)

看到錯誤后,您將能夠看到原因並修復它(可能是您的URI錯誤)或者至少您可以向我們提供更多信息。

嘗試使用此連接。 使用默認端口27017和localhost運行mongod。

var MongoClient = require('mongodb').MongoClient;

MongoClient.connect("mongodb://localhost:27017/table_name", function(err, db) {
    if(err)
    {
      console.log(err);
    }
    else{
      console.log("Connected correctly to DB.");
      db.close();
    }
  });
});

如果它正在使用它,那么請確保您在特定的IP 1.0.0.127(奇怪的IP)和端口4444上運行mongo服務器。

暫無
暫無

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

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