node.js + mongodb 做项目的详解(二)

本文介绍了如何使用Express框架实现用户登录和注册功能,并详细讲解了Express 4.0及以后版本中Session中间件的配置方法。

第一步

当然还是准备工作了,在bootstrap官网下载好需要的东西了,怎么用官网已经写的很详细,在这就不细说了。
下载地址:http://v3.bootcss.com/getting-started/

第二步
就是登陆和注册了

写在router文件中
index.js

复制代码

/*ucenter-登录*/router.post('/ucenter/login', function (req, res) {
    user.findOne({name: req.body.name}, function (err, data) {        if (data.name === req.body.name && data.password ===  req.body.password) {
             console.log(req.body.name + '登陆成功' + new Date());
             res.render('ucenter', {title: 'ucenter'});
        } else {
             console.log(err);
             res.send(500);
        }
   });
});

复制代码

复制代码

/*ucenter-注册*/router.post('/ucenter/register', function (req, res) {
    user.findOne({name: req.body.name}, function (err, docs) {        if (err)
            console.log(err);        else if (!docs) {
            user.create({
                name: req.body.name,
                password: req.body.password
            }, function (err, doc) {                if (err)
                    console.log(err);                else
                    console.log(doc);
            });
            res.render('ucenter', {title: 'ucenter'});
        }
    })
});

复制代码

 

页面中表单提交就用的action,没有用Ajax,这里为了方便讲解,如果你写用Ajax请求的写法
请看:http://www.hubwiz.com/coursecenter 中的express课程 
其中有详细的做法。

第三步

就是express的session问题了

在express 4.0之前的版本,像session之类的中间件是伴随express自动安装的,
网上有的教程使用的express版本正是4.0之前的版本,所以在使用4.0及其之后版本的时候一定要注意这点。

这是在实现mongodb回话组建connect-mongo时需要的。

复制代码

With express4:var session    = require('express-session');var MongoStore = require('connect-mongo')(session);

app.use(session({
    secret: settings.cookie_secret,
    store: new MongoStore({
      db : settings.db,
    })
  }));
With express<4:var express = require('express');var MongoStore = require('connect-mongo')(express);

app.use(express.session({
    secret: settings.cookie_secret,
    store: new MongoStore({
      db: settings.db
    })
  }));
With connect:var connect = require('connect');var MongoStore = require('connect-mongo')(connect);

复制代码

 

这段代码可以再connect-mongo github中看到。

代码还没有整理好,就没有传到github上,请随时关注我的博客。
好了,结束。


转载于:https://my.oschina.net/u/2275217/blog/359603

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值