2017-01-24 4 views
0

Ich entwickle eine Webanwendung, wo der Benutzer auf eine Schaltfläche klickt und ein Jquery AJAX-Aufruf an den NodeJS-Server geht, der wiederum die Datensätze von Elastic Search abruft. Ich möchte, dass diese Datensätze in eine CSV-Datei geschrieben werden und diese Datei an AJAX senden, da die Antwort im Browser heruntergeladen werden kann. Wie kann ich das erreichen?Eine Datei von NodeJS als Antwort an Jquery senden AJAX

Antwort

0
var fs = require('fs');  
var stream = fs.createReadStream(pathToFile); 
stream.on('error', function(){ 
    console.log('404 -------- ', pathToFile); 
}); 
stream.pipe(res); 


var destroy = require('destroy'); // nam i destroy --save 
var onFinished = require('on-finished'); // nam i on-finished --save 
onFinished(res, function (err) { 
    destroy(stream) 
}) 
0
$(document).ready(function() { 
$(".export").on('click',function(){ 
    var project_id="<?php echo $_GET['project_id'];?>"; 
    $.ajax({ 
     type:"GET", 
     url: 'https://work.readycontacts.com/True_Validate/download_file.php', 
     data: "project_id=" + project_id, 
      success:function(data){ 
       console.log(data); 
      } 
    }); 
return false; 
}); 

});

Export ist die Funktion, die Bohne Klick und Sie können mit Ihrem NodeJS Downloadcode-Datei

+0

dann die Datei mit NodeJS diese beziehen sich zum Download ersetzen download_file.php http://stackoverflow.com/questions/17558126/ask -user-where-to-save-Datei-mit-Node-js und dies http://stackoverflow.com/questions/16847416/download-dialog-not-displaying –