使用Google App Engine将图像/视频上传到谷歌云存储

使用Google App Engine将图像/视频上传到谷歌云存储

问题描述:

我已阅读Sending images to google cloud storage using google app engine的问题。使用Google App Engine将图像/视频上传到谷歌云存储

但是,代码中的答案是文件将首先上传到Blobstore,所以文件不能超过32MB。

如何将大文件直接上传到Google云端存储?

我检查了官方文档Upload Objects,但我仍然不知道如何编写表单来发布大文件。

+0

blobstore上没有32mb的文件大小限制。这是一个限制,你可以在一个API调用中读取多少MB。 '应用程序使用一个API调用可以读取的Blobstore数据的最大大小为32兆字节.' – aschmid00 2012-07-06 15:19:19

+0

@ aschmid00:感谢您的评论。但是,我仍然不知道如何上传文件到Blobstore,而不需要调用API ... – Jerry 2012-07-06 15:23:55

+0

它不是api调用上传它限制你,但api调用读取blob。你应该首先阅读https://developers.google.com/appengine/docs/python/blobstore/overview#Uploading_a_Blob的文档,当表单被渲染时你需要生成上传url,或者在稍后的时刻通过ajax调用获取它 – aschmid00 2012-07-06 15:48:59

容易,因为1.7.0

upload_url = blobstore.create_upload_url('/upload_handler', gs_bucket_name='my_bucket') 

将直接上传至谷歌存储和恢复您的blob键指向在云存储的上传。

+0

哇,它的作品!谢谢!是否可以使用upload_filename来设置桶中的文件名? – Jerry 2012-07-08 05:16:43

+0

目前不是 - 我们使用“随机”文件名,因此我们具有与上传到blobstore相同的语义,您可以一次一次上传相同的文件并获得新的blob。 – 2012-07-08 10:26:24

+0

@StuartLangley以及如何检索这个文件名?在BlobstoreUploadHandler中使用get_uploads()会返回一个奇怪的密钥。 – 2012-11-06 12:34:06

UPLOAD_URL = blobstore.create_upload_url(“/上传”,gs_bucket_name =“mybucketname”)

确实获得与Blob键到云存储上传,但它仍然把上传的文件中的Blob存储区也是如此。

+0

仅云存储 – 2012-11-06 09:56:59

+2

我正在使用GAE1.7.3,它仍然将其上传到Blobstore以及GCS上。 – Sandeep 2014-01-21 14:18:42

+1

我确认它仍在上传到blobstore和GCS。 – aschmid00 2014-11-18 17:19:32