[英]How to download a video file from a remote server in laravel?
我有 3 个服务器,1 个用于 api,1 个用于内容,1 个用于前端。 当我点击前端时,我想下载一个 mp4 视频文件。 基本流程-前端按钮点击下载然后拨打api,在api下载一个文件。 这是我已经尝试过的-
<a role="button" class="btn btn-hover iq-button iq-btn-sm" download href="{{config('app.base_api_url').'/downloadAFile?url='.getsinglecontentvideobaseurl().$video->filename.'.'.$video->filetype.'&filetype=video/'.$video->filetype.'&filename='.$video->filename.'.'.$video->filetype.'"'}}">
Download
</a>
public function downloadAFile(Request $request)
{
$url = $request->url ?? '';
$filename = $request->filename ?? 'download.mp4';
$filetype = $request->filetype ?? 'video/mp4';
$file = $url;
$headers = array('Content-Type: '.$filetype);
return Response::download($file, $filename, $headers);
}
Symfony\Component\HttpFoundation\File\Exception\FileNotFoundException
public function downloadAFile(Request $request)
{
ini_set('max_execution_time', 600);
$url = $request->url ?? '';
$filename = $request->filename ?? 'download.mp4';
$tempImage = tempnam(sys_get_temp_dir(), $filename);
copy($url, $tempImage);
return response()->download($tempImage, $filename);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.