这些是我在控制器中尝试将图像作为响应的不同方法。
我的图片位于public folder/img
。
switch ($document->ext) {
case 'doc':
$img = File::get(url('/img/doc.png'));
break;
case 'docx':
$img = File::get(asset('/img/docx.jpg'));
break;
case 'pdf':
$img = File::get(public_path('/img/pdf.png'));
break;
case 'ppt':
$img = File::get(url(public_path('/img/ppt.png')));
break;
default:
}
return new Response($img, 200);
答案 0 :(得分:1)
在文件夹名称之前添加公开
$img = File::get(url('public/img/doc.png'));
答案 1 :(得分:1)
我想这是一个更好的方法,以防我们更改public_path
case 'doc':
return response()->file(public_path('img/doc.png'));
exit;
答案 2 :(得分:0)
使用它从公共文件夹下载文件,并可选择设置名称
public function downloadSample(){
return Response::download(public_path("folder/my_file.xlsx"),
'your_file_name_when_downloaded.xslx');
}