我正在使用以下方法从存储中获取文件:
$image = Storage::get('test.jpg');
如何获得它的哑剧类型?
我尝试过:
$mime = Storage::mimeType($image);
没有运气。
我需要mime类型,以便可以返回图像作为响应:
$response = Response::make($image, 200);
$response->header('Content-Type', $mime);
return $response;
答案 0 :(得分:0)
在控制器中使用Storage Facade时,您可以在Laravel 5.7中将图像作为响应返回。 response()函数将自动设置所需的标头,而无需您自己尝试完成。
// Option #1
return Storage::response('test.jpg'); // Local storage
// Option #2
return Storage::disk('s3')->response('test.jpg); // If you are using an S3 driver
// Option #3
return Storage::cloud()->response('test.jpg'); // Also S3 driver unless otherwise configured
这没有记录,但是可以通过查看基本的Laravel代码来找到:
vendor / laravel / framework / src / Illuminate / Filesystem / FilesystemAdapter.php
如果出于任何原因仍然需要获取mime类型,则应该可以通过以下方式进行检索:
$mimeType = Storage::mimeType('test.jpg');