tiantangmunaiyi 2017-09-18 04:45 采纳率: 0%
浏览 529

connect-redis Error: Can't set headers

再用connect-redis module存储session到redis 但是报错Error: Can't set headers after they are sent. 找了半天都没找到什么问题,我快崩溃了,有没有人遇到过?
我用的是express 4x redis 2.1.x ,这是我的代码:

 var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var session = require('express-session');
var redis = require('redis');
var RedisStore = require('connect-redis')(session);
var serveStatic = require('serve-static');
var login = require('./routes/login');
//var users = require('./routes/users');
var handle_login = require('./routes/handle_login');
var flickr_images = require('./routes/flickr_images');
var logout = require('./routes/logout');
var handle_upload = require('./routes/handle_upload');
var share_result = require('./routes/share_result');

var forward_flickr = require('./routes/forward_flickr');

//console.log(__dirname+'\\public');
var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
//app.set('view engine', 'jade');
app.set('view engine','ejs');

// uncomment after placing your favicon in /public
//app.use(favicon(path.join(__dirname, 'public', 'favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(session({
    secret:'my app secret',
  store:new RedisStore({
    host:'127.0.0.1',
    port:'6379'
    //logErrors:true
  })
}));

app.use(serveStatic(__dirname+'\\public'));
//app.use(express.static(path.join(__dirname, '/public')));

app.use('/', login);
app.use('/login',login);
//app.use('/users', users);
app.use('/handle_login',handle_login);
app.use('/logout',logout);
app.use('/handle_upload',handle_upload);
app.use('/share_result',share_result);
app.use('/flickr_images',flickr_images);
app.use('/forward_flickr',forward_flickr);


// catch 404 and forward to error handler
app.use(function(req, res, next) {
  var err = new Error('Not Found');
  err.status = 404;
  next(err);
});

// error handler
app.use(function(err, req, res, next) {
  // set locals, only providing error in development
  res.locals.message = err.message;
  res.locals.error = req.app.get('env') === 'development' ? err : {};

  // render the error page
  res.status(err.status || 500);
  res.render('error');
});

module.exports = app;
  • 写回答

1条回答

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-10-25 19:31
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献