node创建博客系统遇到的问题,1,乱码。2,multer的使用错误。3使用session问题

1,乱码javascript

    文件存储为utf-8格式后仍是报错。java

 原来这个设置只对新建文件编码有效,旧文件不处理的,我还觉得旧文件也给转换了。web

 

2,上传文件的multer模块使用错误。mongodb

 

throw new TypeError('app.use() requires middleware functions');

这里是multer的版本错误。可使用以下代码解决问题express

// 文件上传插件var multer = require('multer');

var storage = multer.diskStorage({
  destination: function (req, file, cb) {
    cb(null, './public/images/user')
  },
  filename: function (req, file, cb) {
    cb(null, file.originalname)
  }
});var upload = multer({ storage: storage });var cpUpload = upload.any();
app.use(cpUpload);

3,使用session的时候,注意require的位置,容易形成session未定义。cookie

 

var session = require('express-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,
    url: 'mongodb://localhost/blog'
  })
}));


然后,直接在路由控制文件中直接使用user: req.session.user  便可。
相关文章
相关标签/搜索