Java 将文件从GAE直接上载到S3

Java 将文件从GAE直接上载到S3,java,google-app-engine,amazon-s3,blobstore,Java,Google App Engine,Amazon S3,Blobstore,我正在我的GAE web应用程序中创建XML文件,我想把它们放在某个地方。链接必须与主机URL+文件名一致。所以AmazonS3看起来可以工作——我可以上传一个文件,URL直接指向该文件。 现在我的问题是-如何将文件从GAE上传到S3?AmazonSDK在GAE上不起作用。GAE的上传限制是多少?是1MB还是32MB?您是否可以提供一个示例HTTP请求,用于将数据直接上载到S3 使用Blobstore API会更容易吗?上载在GAE中创建并需要直接上载到Blobstore API的文件的文件大小

我正在我的GAE web应用程序中创建XML文件,我想把它们放在某个地方。链接必须与主机URL+文件名一致。所以AmazonS3看起来可以工作——我可以上传一个文件,URL直接指向该文件。 现在我的问题是-如何将文件从GAE上传到S3?AmazonSDK在GAE上不起作用。GAE的上传限制是多少?是1MB还是32MB?您是否可以提供一个示例HTTP请求,用于将数据直接上载到S3

使用Blobstore API会更容易吗?上载在GAE中创建并需要直接上载到Blobstore API的文件的文件大小限制是多少


谢谢。

正如您已经注意到的,S3API不能很好地与GAE配合使用。要在GAE上存储文件,您可以使用BigTable、Blobstore或google存储,因此选择最适合您需要的选项。有一篇很好的文章用代码示例描述了它们

您可以在bigtable中保存文件名和blob位置。
一旦您的数据存储在GAE上,您就可以创建一个特殊的servlet,它将使用文件名,在bigtable中找到相应的编码数据信息,例如从blobstore中检索数据并将其返回给用户(这只是一个想法)。

正如您已经注意到的,S3API与GAE不兼容。要在GAE上存储文件,您可以使用BigTable、Blobstore或google存储,因此选择最适合您需要的选项。有一篇很好的文章用代码示例描述了它们

您可以在bigtable中保存文件名和blob位置。
一旦您的数据存储在GAE上,您就可以创建一个特殊的servlet,该servlet将采用文件名,在bigtable中找到相应的编码数据信息,例如从blobstore中检索并将其返回给用户(只是一个想法)。

谢谢您的回答。幸运的是,有一个实验性的特性,允许在Blobstore()中以编程方式创建文件,这样该部分就可以工作了。但是您的场景中的文件下载限制是什么?1.在Blobstore中以编程方式创建文件,2。在BigTable中为键3创建条目。用户调用servlet,该servlet将为Blobstore中的文件提供服务。在这种情况下,文件大小为DoWoad限制为32 MB吗?您可以通过一个API调用到BBBSturn服务获得最大的32 MB,如果这还不够考虑您使用谷歌存储选项。当您使用blob服务API为用户提供服务时,用户可以一次下载所有内容。谢谢您的回答。幸运的是,有一个实验性的特性,允许在Blobstore()中以编程方式创建文件,这样该部分就可以工作了。但是您的场景中的文件下载限制是什么?1.在Blobstore中以编程方式创建文件,2。在BigTable中为键3创建条目。用户调用servlet,该servlet将为Blobstore中的文件提供服务。在这种情况下,文件大小为DoWoad限制为32 MB吗?您可以通过一个API调用到BBBSturn服务获得最大的32 MB,如果这还不够考虑您使用谷歌存储选项。当您使用blob服务API为用户提供服务时,用户可以一次下载它们。为什么您认为
Amazon SDK不能在GAE上运行
?为什么您认为
Amazon SDK不能在GAE上运行