2013-06-04 126 views
0

我試着下載使用通過我的處理程序和jQuery流的文件,我有一個返回流下載文件

public void ProcessRequest(HttpContext context){ 

    string name = "MyFile.xlsx"   

    context.Response.ContentType = "application/octet-stream"; 
    context.Response.AddHeader("Content-Disposition", "attachment; filename=" + name); 
    Stream stream = GetFileStream("id001"); 

    context.Response.Write (stream); 
} 

以及處理該頁面的處理程序處理程序,但我無法映射的迴應

function downloadFile(e) { 
     var baseUrl = "./handlers/DownloadReport.ashx?"; 
     e.preventDefault();    
     var dataItem = this.dataItem($(e.currentTarget).closest("tr")); 

     var key = "key=" + dataItem.Link; 
     var name = "&name=" + dataItem.ReportName; 
     $.get(baseUrl + key + name, function (result) { 
      // Check for errors 

     }); 
    } 

任何想法如何使這項工作?

謝謝!

回答

0

我認爲問題是,jQuery要麼沒有得到流EOF,要麼當流完成時關閉連接,因此JavaScript無法處理它。

你可以嘗試獲取與jQuery的流插件流,也許可以幫助: https://code.google.com/p/jquery-stream/wiki/API