zoukankan      html  css  js  c++  java
  • 跟我一起用node-express搭建一个小项目(node连接mongodb)[三]

    数据库虽然安装并启动成功了,但我们需要连接数据库后才能使用数据库。
    怎么才能在 Node.js 中使用 MongoDB 呢?
    我们使用官方提供的 node-mongodb-native 驱动模块,打开 package.json,
    在 dependencies 中添加一行:"mongodb": "1.4.15"
    接下来在我的yourapp目录中创建 settings.js 文件,用于保存该博客工程的配置信息,比如数据库的连接信息。
    我们将数据库命名为 blog,因为数据库服务器在本地,所以 settings.js 文件的内容如下:
    module.exports = {
    cookieSecret: 'myblog',
    db: 'blog',
    host: 'localhost',
    port: 27017
    };
    其中 db 是数据库的名称,host 是数据库的地址,port是数据库的端口号,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, settings.port),
    {safe: true});
    打开 app.js,在 var routes = require('./routes/index'); 下添加
    var settings = require('./settings');
    express 也提供了会话中间件,默认情况下是把用户信息存储在内存中,
    但我们既然已经有了 MongoDB,不妨把会话信息存储在数据库中,便于持久维护。
    为了使用这一功能,我们需要借助 express-session 和 connect-mongo 这两个第三方中间件,
    在 package.json 中添加:
    "express-session": "1.9.1",
    "connect-mongo": "0.4.1"
    运行npm install安装模块,打开app.js,添加以下代码
    var session = require('express-session');
    var MongoStore = require('connect-mongo')(session);

    app.use(session({
    secret: settings.cookieSecret,
    key: settings.db,//cookie name
    cookie: {maxAge: 1000 * 60 * 60 * 24 * 30},//30 days
    store: new MongoStore({
    db: settings.db,
    host: settings.host,
    port: settings.port
    })
    }));
    我们已经准备好了数据库访问和会话的相关信息,接下来我们完成用户注册和登录功能

  • 相关阅读:
    Tomcat目录结构及Tomcat Server处理一个http请求的过程
    JDBC
    Ajax
    Session总结
    request的setAttribute()怎么用的
    python中有多种标准输出格式,以下四种为常见的4种标准输出格式
    keywork模块查看当前环境所有关键字(保留字)
    props
    v-bind
    Vue指令
  • 原文地址:https://www.cnblogs.com/smart-girl/p/7412487.html
Copyright © 2011-2022 走看看