I am building a text editor in Node.js where a user create a file in a textarea. When he is done editing the file, he can push an "export" button that triggers a Jquery function that reads the textarea and post the text on the node.js server. The server should read the information and return a file. I would like to avoid creating a file on the server and servicing it, I'd rather create a file on the fly with streams. I have tried using the following and but that didn't work:
exports.exportfile = function(req,res){
var Stream = require('stream')
var stream = new Stream();
res.setHeader('Content-disposition', 'attachment; filename=try.txt');
res.setHeader('Content-type', 'text/plain');
stream.pipe = function(dest) {
dest.write('Hello Dolly')
}
stream.pipe(res)
}
Does anybody have any insight on how to achieve this?
I tested this on my server and it worked. It was from a GET call but I don't see why it wouldn't work with a POST.
res.setHeader('Content-disposition', 'attachment; filename=theDocument.txt');
res.setHeader('Content-type', 'text/plain');
res.charset = 'UTF-8';
res.write("Hello, world");
res.end();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With