2012-02-17 33 views
0

我在Google存储上存储了一些大文件。我希望用户只有在我的GAE应用程序通过身份验证后才能下载它们。用户会使用我的GAE链接,例如http://myapp.appspot.com/files/hugefile.bin允许经过身份验证的用户下载存储在Google存储上的大对象

我的第一次尝试适用于大小为< 32mb的文件。使用Google Storage实验性API,我可以先读取文件,然后将其提供给用户。它要求我的GAE应用程序成为启用Google Storage的项目的团队成员。不幸的是,这并不适用于大文件,它通过首先将文件下载到GAE然后将其提供给播放器来消耗带宽。

有没有人有关于如何执行的想法?

回答

1

您可以使用Blob存储区API文件存储高达5GB大小:http://code.google.com/appengine/docs/python/blobstore/overview.html

下面是关于这个#1线:Upload file bigger than 40MB to Google App Engine?

有一点要注意,正在读Blob存储只能在32MB的增量做,但API提供了访问部分文件以进行读取的方法:http://code.google.com/appengine/docs/python/blobstore/overview.html#Serving_a_Blob

+0

对不起,在大多数情况下,这是一个很好的解决方案,但在我的情况下,Google云端存储不是一种选择。 – qdii 2012-02-17 21:26:59

+0

对不起,我不确定你的意思 - Google Cloud Storage和Blobstore API似乎是两回事。 – Sologoub 2012-02-19 07:05:38

+0

这就是我的意思,让我重新说明这一点:)你建议使用Blobstore,我的意思是我不能,因为在我的情况下,我被迫将我的文件存储在谷歌云存储:) – qdii 2012-02-19 22:44:56

1

仅用于即将发布的AppEngine 1.6.4版本,我们添加了将Google存储对象名称传递给blobstore.send_blob()的功能。发送任何大小的Google Storage文件你的AppEngine应用程序。

Here是1.6.4的预发布公告。

相关问题