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

Como usar la funcion .pipe() de node.js

Estas en el tema de Como usar la funcion .pipe() de node.js en el foro de Node.js en Foros del Web. hago una petición en node.js pero cuando la respuesta es muy grande no la devuelve correctamente. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original var http ...
  #1 (permalink)  
Antiguo 21/06/2015, 11:41
 
Fecha de Ingreso: febrero-2015
Ubicación: Distrito Federal
Mensajes: 38
Antigüedad: 9 años, 2 meses
Puntos: 1
Como usar la funcion .pipe() de node.js

hago una petición en node.js pero cuando la respuesta es muy grande no la devuelve correctamente.

Código Javascript:
Ver original
  1. var http = require('http'),
  2.     path = require('path'),
  3.     fs = require('fs'),
  4.     //extTranslator = require('extTranslator'),//module, that tranlates file extension to proper Content-type
  5.     config = JSON.parse(fs.readFileSync('./config.json', {encoding: 'utf-8'}));//loads config file
  6.    
  7.  
  8. function handleHttpRequest(req, res) {
  9.     try {
  10. // Blblabla comienzo del código
  11.            
  12.                   var headers = JSON.stringify(req.headers);
  13.             headers = JSON.parse(headers);
  14.             if(headers.usesp == "true"){
  15.                 var options = {
  16.                     hostname: "localhost",
  17.                     port:8080,
  18.                     path:"/App"
  19.                     //headers: {'Content-Type': 'text/xml; utf-8'}
  20.                 };
  21.                
  22.                 var internalReq = http.request(options,function(intRes){
  23.  
  24.                     intRes.on('data', function(chunk) {
  25.                         postData = chunk;
  26.                         res.statusCode = 200;
  27.                         res.write(postData);
  28.                         res.end();
  29.                        
  30.                     });
  31.                    
  32.                     intRes.on('error',function(e) {
  33.                       console.log('Problema con el request interno: ' + e.message);
  34.                     });
  35.                 });    
  36.                
  37.                 internalReq.write("");             
  38.                 internalReq.end();
  39.             }else{
  40. // Blabla bla otra cosa
  41.                 }
  42.     } catch (e) {
  43.         console.log('ERROR: ' + e.message);
  44.         res.statusCode = 500;
  45.         res.end('500 Server error

Quisiera saber cuál sería la mejor forma de enviar el postData pero como un stream utilizando la funcion pipe (la cual no entiendo bien como funciona)
Espero puedan ayudarme

Etiquetas: stream
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 21:26.