I am trying to compress output from node js application. I am able to compress the text string successfully on server side. But the header sent with it says HTML/plain text
so browser is not able to decompress it I am using node v0.6.18 my code is as follows: var http = require('http'), url = require('url'), fs = require('fs'), amqp = require('amqp'), redis = require('redis'), zlib = require('zlib'), sys = require(process.binding('natives').util ? 'util' : 'sys'); var exchangeName= 'conferenceTest'; send404 = function(res) { res.writeHead(404); res.write('404'); res.end();}; server = http.createServer(function(req, res) { var path = url.parse(req.url).pathname; switch (path) { case '/': fs.readFile(__dirname + "/index.html", function(err, data) { if (err) { return send404(res); } else { res.writeHead(200, {'Content-Type': 'application/zip','Connection':'close', 'content-encoding': 'gzip'}); res.write(data, 'utf8'); res.end(); } }); break; } }); // listen to the http server for socket connectionsvar io = require('socket.io').listen(server); var connection = amqp.createConnection({host: 'localhost'}); connection.on('ready', function() { var exchange = connection.exchange(exchangeName, { // create exchange type: 'direct', durable: true }); io.set('close timeout',500); io.set('browser client gzip',true); io.sockets.on('connection', function(client) { console.log("client connected"); client.on('setQueue', function(data) { var queue = connection.queue(data.queueName, { durable: true, autoDelete: false }); }); /************************** CHANGE VIEW EVENT HANDLER STARTS **************************/ client.on('changeview', function(data) { var queue = connection.queue(data.queueName, { //create queue durable: true, autoDelete: false }); var plaintext = "Put any kind of meat on a stick and roast it over a flame and it immediately becomes food fit for gods. No country understands this sacred rule of seared meat like Turkey.Turkish kebabs are the incarnation of the meat lovers most exotic fantasies, with grilled lamb, beef and chicken as skewer MVPs.Most kebab restaurants also have a long list of Turkish starters called meze that are as delicious as the main dishes.Turkeys best alcoholic complement for all that meat is raki -- an aniseed-flavored drink that s often diluted with water and chilled with ice. Frothy, yogurt-based ayran is a great non-alcoholic complement to heavy dishes. But who are we kidding -- you just want the meat. Heres where to get it in Turkey."; zlib.deflate(plaintext, function(err, buffer) { if (!err) { console.log("Original Length: " + plaintext.length); console.log("Compressed Length: " + buffer.toString('base64').length); io.sockets.emit('changeview', buffer.toString('base64')); } }); }); }); }); process.on( 'uncaughtException', function ( err ) { console.log( 'Uncaught Exception: ' + err.message ); }); server.listen(18080); Any ideas or help would be greatly appreciated -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.