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 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题