无法读取下定义的mongoDB NodeJS的“插入”属性

我正在尝试将mongoDB合并到我的应用程序中,但是当我尝试添加到集合中时,我尝试使用nodeJS启动服务器时出现“无法读取'插入''属性的错误。

我很欣赏这个问题,但是当我试图通过编写下面的代码来纠正错误时,我得到了另外一个问题,但是我没有定义var

var accountCollection = var mongodb = mongodb.collection('account'); accountCollection.insert({username:"wendy3", password:"lilac3"});

我的服务器的相关代码如下,我在网上看了很多指南,似乎没有任何解决我的问题,所以任何帮助,将不胜感激。

 //create server, listening on port 3000 //when there is a request to port 3000 the server is notified //depending on the request a specific action will be carried out var mongodb = require("mongodb"); //create connection to MongoDB var db = mongodb('localhost:27017/Game', ['account', 'progress']); //insert into collection db.account.insert({username:"wendy3", password:"lilac3"}); var express = require('express'); var app = express(); var serv = require('http').Server(app); var colors = require('colors/safe'); 

连接到数据库是一个asynchronous操作,但你试图访问它,就好像它是同步的。

如果你看看你正在使用的包的例子 ,它显示你必须使用一个callback函数,一旦收到连接响应就会被调用。

 var MongoClient = require('mongodb').MongoClient; // Connection URL var url = 'localhost:27017/Game'; // Use connect method to connect to the Server MongoClient.connect(url, function(err, db) { if (err) return console.log('Error: ' + err); console.log("Connected correctly to server"); }); 

谢谢 – 我想我现在明白了(我是MongoDB的新手,所以请原谅我)

我现在有以下代码; 但是我收到错误invalid schema, expected mongodb. 我可能把MongoClientreplace成MongoClient的地方吗? 所以我可以看到它正在尝试连接,但是callback正在返回一个错误。

码:

 var MongoClient = require('mongodb').MongoClient; //connection url var url = ('localhost:27017/Game', 'account', 'progress'); //use connect method to connect to server MongoClient.connect(url, function(err, db){ if (err) return console.log('Error: ' + err); console.log('mongodb is connected to the server'); });