Node.js注意事项

2018-12-12  本文已影响0人  黑色的五叶草
  1. express-static的位置要写在模板引擎路由后面
  2. cookieSession 写在 cookieParser 后,因为只有解析了cookie,才能用cookie里面的session_id。
    cookieSession的keys加到全局的server上。
    cookieSession的keys变更后,每次返回给前台新的签名。
const express=require('express');
const static=require('express-static');
const bodyParser=require('body-parser');
const multer=require('multer');
const multerObj=multer({dest: './static/upload'});
const mysql=require('mysql');
const cookieParser=require('cookie-parser');
const cookieSession=require('cookie-session');
const consolidate=require('consolidate');
const expressRoute=require('express-route');

var server=express();
server.listen(8080);

//1.获取请求数据
//get自带
server.use(bodyParser.urlencoded());
server.use(multerObj.any());

//2.cookie、session
server.use(cookieParser());
(function (){
  var keys=[];
  for(var i=0;i<100000;i++){
    keys[i]='a_'+Math.random();
  }
  server.use(cookieSession({
    name: 'sess_id',
    keys: keys,
    maxAge: 20*60*1000  //20min
  }));
})();

//3.模板
server.engine('html', consolidate.ejs);
server.set('views', 'template');
server.set('view engine', 'html');

//4.route
server.use('/', require('./route/web.js')());
server.use('/admin', require('./route/admin.js')());

//5.default:static
server.use(static('./static/'));

  1. res.render('admin/index.ejs', {}); admin前面不加' / '
    router.get('/', (req, res) => {
        res.render('admin/index.ejs', {});
    });
  1. res.redirect('/admin/banners'); 重定向的文件,不能加.ejs文件类型
上一篇 下一篇

猜你喜欢

热点阅读