nodejs教程之环境安装及运行

2020-06-17 06:45:33易采站长站整理

  },
  “dependencies”: {
    “express”: “3.4.8”,
    “ejs”: “*”,
    “mongodb”: “*”
  }
}

然后运行npm install下载新的依赖包,这个样子与mongoDB相关的驱动就有了,要链接mysql等数据库还需要其他依赖包

这时在根目录下创建setting.js文件,保存数据库连接信息


module.exports = {
  cookieSecret: ‘myblog’,
  db: ‘blog’,
  host: ‘localhost’
};

db是数据库名称,host是数据库地址,cookieSecret用于cookie加密与数据库无关

接下来根目录下新建models文件夹,并在models文件夹下新建db.js


var settings = require(‘../settings’),
    Db = require(‘mongodb’).Db,
    Connection = require(‘mongodb’).Connection,
    Server = require(‘mongodb’).Server;
module.exports = new Db(settings.db, new Server(settings.host, Connection.DEFAULT_PORT), {safe: true});

new Db(settings.db, new Server(settings.host, Connection.DEFAULT_PORT), { safe: true });

设置数据库名,数据库地址和数据库端口创建一个数据库实例,并通过module.exports导出实例,这样就可以通过require对数据库进行读写

需要成功写入数据库,服务器端程序就需要处理post信息,于是我们在models文件夹下新建user.js


var mongodb = require(‘./db’);

function User(user) {
  this.name = user.name;
  this.password = user.password;
};

module.exports = User;

//存储用户信息
User.prototype.save = function (callback) {
  //要存入数据库的用户文档
  var user = {
    name: this.name,
    password: this.password
  };
  //打开数据库
  mongodb.open(function (err, db) {
    if (err) {
      return callback(err); //错误,返回 err 信息
    }
    //读取 users 集合
    db.collection(‘users’, function (err, collection) {
      if (err) {
        mongodb.close();
        return callback(err); //错误,返回 err 信息
      }
      //将用户数据插入 users 集合
      collection.insert(user, {
        safe: true
      }, function (err, user) {
        mongodb.close();