samedi 27 décembre 2014

Is it possible to stream an octet stream being generated in javascript?


Lets suppose a case where a huge string is generated from a small string using some javascript logic, and then the text file is forced to be downloaded on the browser.


This is possible using an octet-stream download by putting it as an href , as mentioned in this answer :


Create a file in memory for user to download, not through server.



function download(filename, text) {
var pom = document.createElement('a');
pom.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
pom.setAttribute('download', filename);
pom.click();
}


But this solution requires 'text' to be fully generated before being pushed for the download, hence it will have to be held in browser memory fully .


Is it possible to stream the text as it gets generated using CLIENT SIDE LOGIC ONLY ?


For example :



var inputString = "A";
var outStr = "";
for(var i = 0; i < 10000000 ; i++)
{
/* concatenate inputString to output on the go */
}




Aucun commentaire:

Enregistrer un commentaire