laravel从s3下载excel文件无法正常工作

时间:2017-10-24 10:39:51

标签: amazon-s3 laravel-5.1

我正在使用laravel 5.1我需要从amazon s3存储下载excel。我正确地完成了所有过程,如果是pdf格式文件意味着它正确下载但是对于excel文件下载它正在下载zip格式。可以请任何人帮我解决这个问题。

$filePath = "CIS/download/format/upload_format.xlsx";
if ( Storage::disk('s3')->has($filePath)) {
$file = Storage::disk('s3')->get($filePath);
$getMimeType = Storage::disk('s3')->getMimetype($filePath);
return Response::make($file, 200, [
'Content-Type' => $getMimeType,
'Content-Disposition' => 'attachement; 
filename:upload_format.xlsx',
]);
}

1 个答案:

答案 0 :(得分:0)

您可以根据需要提供内容类型,并将内容处置视为“附件”,因为您的文件来自S3,您必须将其作为附件下载。

$event_data = $this->ticket->where('user_id', $user_id)->first();

$data  = $event_data->pdf;

$get_ticket = 'tickets/'. $data;
$file_name  = "YOUR_DESIRED_NAME.csv";

$headers = [
  'Content-Type'        => 'text/csv',            
  'Content-Disposition' => 'attachment; filename="'. $file_name .'"',
];

return \Response::make(Storage::disk('s3')->get($get_ticket), 200, $headers);