1.后台获取参数的方式
型如:localhost:3000/user/sigin/111?userId=222
1.1 req.params.userId //输出111
//获取追加的参数值,
1.2 req.query.userId //将输出222
1.3 req.body.userId //输出111
//都去查一遍,有优先级顺序,先去拿路由中的userId,如果没有,在去拿请求体(body)中的userId,如果还没有,就去拿url中的userId
1.4 req.param('userId')
2.express 4.x 前端页面表单提交对象,后台获取对象
2.1.前端
<form method="post" action="/user/login">
<input name="user[username]" type="text"/>
<input name="user[password]" type="password"/>
<button type="submit" value="提交"/>
</form>
后台,如果要获取user对象,需要修改如下配置
app.use(bodyParser.uelencoded({extended:true})); //即把原来的false改为true
然后在路由中就可以这样获取user对象
router.post('/user/login',function(req,res) {
var user = req.body.user;
console.log(user);
});
3.换用淘宝的源,快速安装module
npm 默认是从国外的源获取和下载包信息, 不慢才奇怪.可以通过简单的 ---registry 参数, 使用国内的镜像 https://registry.npm.taobao.org ,于是乎
npm --registry=https://registry.npm.taobao.org install xxx --save //xxx代表模块名称
更多信息请参考:https://cnodejs.org/topic/5338c5db7cbade005b023c98
4.express4.x利用connect-mongo
由于express4.x已经移除了很多中间件,所以,利用connect-mongo的时候
需要先安装express-session模块,然后在安装connect-mongo模块,在app.js中这样用
var session = require('express-session');
var Store = require('connect-mongo')(session);
app.use(session({
secret:'smart',
store:new Store({
url:dbUrl, //dbUrl是数据库的连接地址,比如:var dbUrl = 'mongodb://localhost/smart';
collection:'sessions'
})
}))