1,乱码
文件存储为utf-8格式后还是报错。
原来这个设置只对新建文件编码有效,旧文件不处理的,我还以为旧文件也给转换了。
2,上传文件的multer模块使用错误。
throw new TypeError('app.use() requires middleware functions');
这里是multer的版本错误。可以使用如下代码解决问题
// 文件上传插件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未定义。
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 即可。