我将以下代码作为后端示例的一部分,以生成有效期为15分钟的下载链接。
$url = "{$bucket}/{$key}";
$request = $this->s3Client->get($url);
return $this->s3Client->createPresignedUrl($request, '+15 minutes');
据我了解,这向亚马逊发出了网络请求,我需要为每个页面加载生成大约20-30个下载链接。
那么,在仍然允许客户端下载文件的同时又如何不滥用Amazon API呢?我能想到的2个选项是:
我感兴趣的是:
这是一个不是问题的问题,因为创建与AWS SDK的PHP预标识的URL并没有做出AWS的请求。您可能还会发现该S3Client::getObjectUrl()
方法更易于使用,因为它是您现在正在做的事情的抽象。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句