Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.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
Python 用户上传到我的S3存储桶_Python_File Upload_Amazon Web Services_Amazon S3 - Fatal编程技术网

Python 用户上传到我的S3存储桶

Python 用户上传到我的S3存储桶,python,file-upload,amazon-web-services,amazon-s3,Python,File Upload,Amazon Web Services,Amazon S3,我希望一个用户,不必拥有亚马逊帐户,就可以将多个千兆字节的文件上传到我的S3存储桶中 我该怎么办?我想让用户通过给他们一个密钥或者通过一个上传表单来做到这一点,而不是让一个bucket世界显然是可写的 我更喜欢在我的服务器端使用Python,但其想法是用户只需要他们的web浏览器,或者打开他们的终端并使用内置的可执行文件 有什么想法吗?这个答案与.Net语言相关 我们有这样的需求,我们已经创建了一个可执行文件。该可执行文件在内部称为web方法,该方法验证了应用程序是否经过身份验证可以将文件上载到

我希望一个用户,不必拥有亚马逊帐户,就可以将多个千兆字节的文件上传到我的S3存储桶中

我该怎么办?我想让用户通过给他们一个密钥或者通过一个上传表单来做到这一点,而不是让一个bucket世界显然是可写的

我更喜欢在我的服务器端使用Python,但其想法是用户只需要他们的web浏览器,或者打开他们的终端并使用内置的可执行文件


有什么想法吗?

这个答案与.Net语言相关

我们有这样的需求,我们已经创建了一个可执行文件。该可执行文件在内部称为web方法,该方法验证了应用程序是否经过身份验证可以将文件上载到AWS S3


您也可以使用web浏览器来实现这一点,但如果您的目标是大文件,我不建议这样做。

您正试图通过python后端将文件代理到S3,即太大的文件。相反,您可以将S3配置为直接接受来自用户的文件(无需通过后端代码进行代理)

这里有解释:。这样,您的服务器根本不需要处理任何上载负载

如果您还希望您的用户使用他们的别处ID(google/FB等)来实现此工作流,这也是可能的。他们将能够将这些文件上传到您的bucket中的子文件夹(路径),而不会暴露bucket的其他部分。这里详细介绍了这一点:Web。虽然上面说的是移动应用,但你也可以将其应用于网络应用

综上所述,正如@Ratan所指出的,当你从浏览器上尝试时,大文件上传可能会中断,而它不能“只重试失败的部分”。这就是专用应用的需求所在。另一个选择是要求用户将文件保存在他们的Dropbox/BOX.com帐户中,您的服务器可以从那里读取文件-这些服务已经使用他们的应用程序处理大文件上传以及所有重试等