【发布时间】:2011-09-28 09:13:07
【问题描述】:
我已经在 Google App Engine 官方网站上搜索并阅读了有关 BlobStore 的文档,但仍有一些我不明白的问题。我的平台是 webapp。
我读过的文档:
阅读所有这些文档后,我仍然有一些问题:
-
在Blobstore Python API Overview 中说:应用程序通过一次 API 调用可以读取的 Blobstore 数据的最大大小为 1MB。这是什么意思?这个 1MB 限制是否适用于
sendblob()?以webapp Blobstore Handlers中的如下代码为例:class ViewPhotoHandler(blobstore_handlers.BlobstoreDownloadHandler): def get(self, photo_key): self.send_blob(photo_key)这是否意味着与
photo_key关联的照片(上传并存储在 blobstore 中)必须小于 1MB?从上下文来看,我不这么认为。我认为照片可以大到 2GB。但我不确定。 -
send_blob()上的 ContentType 是如何确定的?是文本/html 还是图像/jpeg?我可以自己设置它吗? webapp Blobstore Handlers 的以下解释令人困惑。对于不会说英语的人来说相当困难。有人可以用代码示例来解释它吗?send_blob()的文档在哪里?我找不到它。send_blob() 方法接受一个 save_as 参数,该参数确定 blob 数据是作为原始响应数据还是作为带有文件名的 MIME 附件发送,这会提示 Web 浏览器使用给定名称保存文件而不是显示它。如果参数的值是字符串,则 blob 作为附件发送,字符串值用作文件名。如果 True 且 blob_key_or_info 是 BlobInfo 对象,则使用该对象的文件名。默认情况下,blob 数据作为响应正文发送,而不是作为 MIME 附件发送。
有一个文件http://www.example.com/example.avi 是20MB 甚至2GB。我想从互联网上获取 example.avi 并将其存储在 BlobStore 中。我查了一下,urlfetch 请求大小限制为 1MB。我搜索了,没有找到解决方案。
非常感谢!
【问题讨论】:
-
urlfetch 限制不是 1MB - 它是 32MB 并且已经有一段时间了。
标签: python google-app-engine blobstore web-applications