Foros del Web » Programando para Internet » Node.js »

error al ejecutar

Estas en el tema de error al ejecutar en el foro de Node.js en Foros del Web. buenas noches, estoy empezando a tabajar con node.js ... cuando ejecuto mi codigo en el navegador me arroja este error: Error: Can't set headers after ...
  #1 (permalink)  
Antiguo 24/10/2014, 18:01
 
Fecha de Ingreso: octubre-2010
Ubicación: Merida
Mensajes: 26
Antigüedad: 13 años, 6 meses
Puntos: 0
error al ejecutar

buenas noches, estoy empezando a tabajar con node.js ... cuando ejecuto mi codigo en el navegador me arroja este error:

Error: Can't set headers after they are sent.
at ServerResponse.OutgoingMessage.setHeader (http.js:689:11)
at ServerResponse.header (/var/www/node/node_modules/express/lib/response.js:666:10)
at ServerResponse.send (/var/www/node/node_modules/express/lib/response.js:146:12)
at /var/www/node/server.js:21:7
at Array.forEach (native)
at /var/www/node/server.js:20:12
at Layer.handle [as handle_request] (/var/www/node/node_modules/express/lib/router/layer.js:82:5)
at next (/var/www/node/node_modules/express/lib/router/route.js:100:13)
at Route.dispatch (/var/www/node/node_modules/express/lib/router/route.js:81:3)
at Layer.handle [as handle_request] (/var/www/node/node_modules/express/lib/router/layer.js:82:5)




el codigo que estoy trabajando es:

var express = require('express');
var server = express();

var messages = [];
var responses = [];

server.get('/',function(req,res){
res.send('hello world');
});

server.get('/messages',function(req,res){
responses.push(res);

// res.send(messages+ '<script>setTimeout(function(){window.location.rel oad()}, 1000)</script>');
});

server.get('/messages/:message',function(req,res){
messages.push(req.params.message);

responses.forEach(function(res){
res.send(messages+'<script>window.location.reload( )</script>');
});

res.send('tu mensaje es '+req.params.message);
});

server.listen(3000);

alguien sabe porque me aparece ese error??? gracias
  #2 (permalink)  
Antiguo 06/11/2014, 02:25
Avatar de maturano  
Fecha de Ingreso: enero-2010
Ubicación: /home/
Mensajes: 537
Antigüedad: 14 años, 3 meses
Puntos: 36
Respuesta: error al ejecutar

... te puedo decir el error es porque se están enviando cabeceras después de que hubo contenido incumpliendo el protocolo HTTP.

Si sigues teniendo el problema, avisa y lo vemos con más calma.
__________________
I ♥ The Music!
  #3 (permalink)  
Antiguo 06/11/2014, 16:41
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 16 años, 1 mes
Puntos: 1329
Respuesta: error al ejecutar

Código Javascript:
Ver original
  1. responses.forEach(function(res){
  2. res.send(messages+'<script>window.location.reload( )</script>');
  3. });

No puedes enviar más de una ves res.send();

Saludos
__________________
Grupo Telegram Docker en Español
  #4 (permalink)  
Antiguo 06/11/2014, 17:23
Avatar de maturano  
Fecha de Ingreso: enero-2010
Ubicación: /home/
Mensajes: 537
Antigüedad: 14 años, 3 meses
Puntos: 36
Respuesta: error al ejecutar

Buen ojo Carlangueitor
__________________
I ♥ The Music!

Etiquetas: javascript
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:26.