2 回答

TA貢獻1770條經驗 獲得超3個贊
我希望它對你有幫助。我在“文件”文件夾中上傳了文件,而不是在存儲文件夾中。您只需根據 that.set 您的 content_types 根據您上傳的文件進行更改。
我的控制器代碼是
public function openPdf(Request $request,$docFile)
{
$file='/var/www/html/laravelQuiz/public/files/'.$docFile;
$extension = explode(".",$docFile);
foreach($extension as $extensions){
if($extensions == 'pdf'){
$content_types = 'application/pdf';
}elseif($extensions == 'doc'){
$content_types = 'application/msword';
}elseif($extensions == 'txt'){
$content_types = 'application/octet-stream';
}elseif($extensions == 'docx'){
$content_types = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
}elseif($extensions == 'ppt'){
$content_types = 'application/vnd.ms-powerpoint';
}elseif($extensions == 'odt'){
$content_types = 'application/vnd.ms-powerpoint';
}elseif($extensions == 'txt'){
$content_types = 'text/plain';
}
}
$content = file_get_contents($file);
return Response::make($content, 200, array('content-type'=>$content_types));
}

TA貢獻1880條經驗 獲得超4個贊
您需要提供文件的完整 url。
嘗試添加文件擴展名:
$extension = ".png" // or whatever type file is
return Response()->download($file.$idFile.$extension);
保存文件時,您還可以在存儲文件時獲取擴展名:
$extension = $request->file('file')->extension();
- 2 回答
- 0 關注
- 228 瀏覽
添加回答
舉報