javascript - Error: Can't set headers after they are sent. - Nodejs ExpressJs -


i got code below other resources, trying work twitter api, throws me error.

i couldn't understand how resolve that. error appear when use callbacks twice, nothing seems that.

var express = require('express'),      app     = express(),      server  = require('http').createserver(app),      routes  = require('./routes'),      io      = require('socket.io').listen(server),      path    = require('path'),      twitter = require('ntwitter');   app.configure(function()   {        app.set('port', process.env.port || 5000);      app.set('views', __dirname + '/views');     app.set('view engine', 'ejs');     app.use(express.favicon());     app.use(express.logger('dev'));        app.use(express.bodyparser());        app.use(express.methodoverride());        app.use(app.router);        app.use(express.static(path.join(__dirname, 'public'))); });  app.configure('development', function(){      app.use(express.errorhandler());  });  server.listen(app.get('port'), function(){      console.log("express server listening on port " + app.get('port'));  });  app.get('/', routes.index); var twit = new twitter({   twit.stream('statuses/filter', { locations: criteria }, function(stream) {      stream.on('data', function (data) {         var geo=false,latitude,longitude;          io.sockets.volatile.emit('tweets', {          });     }); }); 

index.js

exports.index = function(req, res){   res.render('index', { title: '', criteria:'' }); }; 

errors getting:

express server listening on port 5000 / 200 30ms - 8.43kb _http_outgoing.js:335     throw new error('can\'t set headers after sent.');     ^  error: can't set headers after sent.     @ serverresponse.outgoingmessage.setheader (_http_outgoing.js:335:11)     @ serverresponse.res.setheader (/home/jayasurya/desktop/node-twitter-modules/tweetmapviewer/node_modules/connect/lib/patch.js:59:22)     @ next (/home/jayasurya/desktop/node-twitter-modules/tweetmapviewer/node_modules/connect/lib/proto.js:153:13)     @ function.app.handle (/home/jayasurya/desktop/node-twitter-modules/tweetmapviewer/node_modules/connect/lib/proto.js:198:3)     @ server.app (/home/jayasurya/desktop/node-twitter-modules/tweetmapviewer/node_modules/connect/lib/connect.js:66:31)     @ manager.handlerequest (/home/jayasurya/desktop/node-twitter-modules/tweetmapviewer/node_modules/socket.io/lib/manager.js:564:28)     @ server.<anonymous> (/home/jayasurya/desktop/node-twitter-modules/tweetmapviewer/node_modules/socket.io/lib/manager.js:118:10)     @ emittwo (events.js:92:20)     @ server.emit (events.js:172:7)     @ httpparser.parseronincoming [as onincoming] (_http_server.js:528:12) 

many help!


Comments

Popular posts from this blog

inversion of control - Autofac named registration constructor injection -

verilog - Systemverilog dynamic casting issues -

ios - Change Storyboard View using Seague -