繁体   English   中英

说明 - 使用 Blobstore API 将图像/视频上传到 Google Cloud Storage

[英]Clarification - using Blobstore API to upload images/videos to Google Cloud Storage

我一直在想办法弄清楚如何使用 Blobstore API 将图像/视频上传到我的 App Engine Python Web 应用程序的 Google Cloud Storage。 这是我到目前为止的位置:

我使用以下代码为我的 HTML 表单创建操作 URL。

upload_url = create_upload_url('/upload', gs_bucket_name='bucket')

我使用 webapp2/Jinja 模板并将 upload_url 传递到我的 HTML 模板中。

<form action="{{upload_url}}" method="POST" enctype="multipart/form-data">
   <input type="file" name="file">
   <input type="submit" name="submit" value="SUBMIT">
</form>

我知道这会将文件直接上传到 Google Cloud Storage,然后使用 blob 键调用我的/upload处理程序。

我很困惑在这之后该怎么做。 这是我的/upload处理程序代码:

 class UploadHandler(blobstore_handlers.BlobstoreUploadHandler):
    def post(self):
        upload = self.get_upload()[0]
        blob_key = upload.key()

这是将图像/视频上传到 Google Cloud Storage 时获取 blob_key 的正确方法吗?

文档说使用blobstore.create_gs_key('/gs' + 'bucketname' + 'filename')创建 blob_key。 文件名从何而来? 这段代码是否应该进入我的 post 函数,用于在对象存储在 GCS 中之后调用的上传处理程序?

此外,从 Google 文档中,我对这段代码的作用或适合图片的内容感到困惑:

with gcs.open(filename, 'w') as f:
f.write('abcde\n')

在此处查看我刚刚在 GitHub 中为您创建的示例:

https://github.com/lucena/gae-upload-gcs

如果您对此有任何疑问,请告诉我。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM