MongoDB客户端+Node.js

3

我按照MongoDB的"基本介绍" (http://mongodb.github.com/node-mongodb-native/api-articles/nodekoarticle1.html)学习。

我从源代码安装了node-v0.8.21,安装在目录"/home/myuser/lib/node/"下(我不是机器上的root用户)。

我为npm设置了代理,并输入以下命令安装了"mongodb"驱动程序:./npm install mongodb。 该命令成功返回,并在目录"/home/myuser/lib/node/bin/node_modules/"中生成了一个mongodb目录。

我不知道如何使用这个驱动程序...... 我尝试了以下:

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

// Connect to the db
MongoClient.connect("mongodb://localhost:27017/exampleDb", function(err, db) {
if(!err) {
 console.log("We are connected");
}
});

但我总是遇到这个错误代码:Uncaught ReferenceError: require is not defined 提前感谢。

1
你是如何执行那段代码的?其他小型的Node.js应用程序是否可以使用相同位置的require工作?那段代码在网页中不起作用。 - WiredPrairie
1
该代码只能在NodeJs中执行。它不能用于网页。您需要创建API/routes等来访问和显示数据在网页上。 - WiredPrairie
1
抱歉指出这一点:但你对这个没有任何了解。Node在某种非常抽象的方式上类似于PHP。这意味着:node.js在服务器端运行,就像PHP一样。在浏览器中的限制与使用其他服务器端技术编写的网站相同。唯一与浏览器共享的是编程语言。 - TheHippo
1
感谢您的回复。@Hippo,你是正确的。 - Maurice
@dethtron5000 Mongoose并不是由10gen编写的(它来自LearnBoost),但除此之外你是正确的。 - TheHippo
显示剩余6条评论
1个回答

4
您正在尝试在浏览器上运行服务器JavaScript代码。 JavaScript不再是客户端脚本语言。 nodeJS使用JavaScript来运行服务器框架,并且日益流行。

我现在不知道如何使用驱动程序.. 我尝试了这个:

不熟悉nodeJS的人会犯这个错误。您必须了解nodeJS类似于任何其他提供HTML页面的服务器。在服务器上,您有服务器端脚本,该脚本执行并传递服务器提供的客户端内容。只有JavaScript在nodeJS中同时在服务器和客户端上执行。在学习使用mongodb包之前,您应该学习如何使用node。以下是一些链接:
  1. 如何开始使用Node.js
  2. 什么是 Node.js?
测试在nodeJS中的文件
  1. 您创建一个名为app.js的文件,并将您提供的代码片段放入其中。app.js应该立即位于您执行了./npm install mongodb的文件夹内。
  2. 然后从同一位置运行该应用程序,方法是执行node app.js

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接