我有一個ajax POST請求被髮送到laravel控制器,這工作正常。我在控制器上做了一些工作,我得到一個字符串,其大小可以從幾百千字節到幾百兆字節。POST請求Laravel然後下載字符串作爲文件
我想下載這個字符串作爲一個文件,我一直在嘗試各種方法,但問題是每當我使用返回將字符串傳遞給不同的控制器或不同的頁面,它將輸出返回到ajax成功代替。我嘗試刪除成功,但它仍然無法正常工作。
/*POST request*/
$.ajax({
type:"post",
url:"{{ URL::route('sshDownload') }}",
data: {
id:id
file:file,
status:"logfile"
},
success:function(data){
console.log(data);
console.log("SUCCESS");
}
});
在我sshDownload
控制器我試圖做這樣的事情:
return Response::make($output, '200', array(
'Content-Type' => 'text/plain',
'Content-Disposition' => 'attachment; filename="file.log'
));
,我甚至已經試過:
return Redirect::route('sshDownloadName')->with($output);
但最終,我隨時隨地使用返回它將數據發回到前端ajax。
如何直接從PHP下載字符串,而不是將它發送到ajax?
什麼是您的基本控制器類型? – 2014-08-29 20:23:56
你是什麼意思? – Envious 2014-08-29 20:26:03