Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel S3随机mime类型_Laravel_Laravel 5_Amazon S3 - Fatal编程技术网

Laravel S3随机mime类型

Laravel S3随机mime类型,laravel,laravel-5,amazon-s3,Laravel,Laravel 5,Amazon S3,这很奇怪,我试图从AWS S3 form Laravel控制器中检索一个图像,但每次重新加载时都会得到一个随机的Mime类型 控制器中的代码 public function show($attachment){ $attachmentTest = Storage::disk('s3')->get("attachments/".$attachment); return File::mimeType($attachmentTest); } 和路由器: Route::get('

这很奇怪,我试图从AWS S3 form Laravel控制器中检索一个图像,但每次重新加载时都会得到一个随机的Mime类型

控制器中的代码

public function show($attachment){
    $attachmentTest = Storage::disk('s3')->get("attachments/".$attachment);
    return File::mimeType($attachmentTest);
}
和路由器:

Route::get('attachments/{slug}', [
    'as'         => 'images.show',
    'uses'       => 'AttachmentController@show'
]);

屏幕捕获浏览器重新加载测试:

文件外观用于本地文件系统,而不是S3。存储::磁盘('s3')和文件彼此不兼容

mimeType通过文件名检查本地文件的mime类型。如果传递的是文件内容,而不是本地路径,则结果可能无法预测


使用此引用查看Facades的API信息以及您实际调用的方法:

文件facade用于本地文件系统,而不是S3。存储::磁盘('s3')和文件彼此不兼容

mimeType通过文件名检查本地文件的mime类型。如果传递的是文件内容,而不是本地路径,则结果可能无法预测


使用此引用查看Facades的API信息以及您实际调用的方法:

如果可以,您需要直接从S3获取mimeType。下载它只会让你得到原始图像

public function show($attachment){
  return Storage::disk('s3')->mimeType("attachments/".$attachment);
}

这将起作用,您需要直接从S3获取mimeType。下载它只会让你得到原始图像

public function show($attachment){
  return Storage::disk('s3')->mimeType("attachments/".$attachment);
}

@David选择此答案进行更正,以便可以关闭问题。选择“确定”。Thanks@David选择此答案进行更正,以便可以关闭问题。选择“确定”。谢谢