我开发了一个PHP Slim API Web服务,从中我访问我的Google Drive Files并将它们返回到我的Angular前端。现在我不确定从Google云端硬盘下载文件的最佳方法是哪种。 1.我可以直接从GuzzleHTTP流下载文件到我的浏览器吗? 2.或者我必须先将文件保存到我的服务器才能下载吗?
请告诉我哪种方式更好,以及如何实现这一目标?
到目前为止我的代码:
$fileId = filter_var($data['id']);
$param = array(
'alt' => 'media' ,
'mimeType'=> $mimeType
);
$content = $client->files->get($fileId, $param);
***<here i want to process the file and download it to my browser>***
那么最后如何处理angular.js中的下载?
答案 0 :(得分:0)
在路线内,这应该有效:
echo $content;
return $response->withHeader('Content-Description', 'File Transfer')
->withHeader('Content-Type', $mimeType)
->withHeader('Content-Disposition', 'attachment;filename="'.$yourFileName.'"')
->withHeader('Expires', '0')
->withHeader('Cache-Control', 'must-revalidate')
->withHeader('Pragma', 'public')
->withHeader('Content-Length', mb_strlen($content, '8bit') );