Python Appengine Blobstore:索引超出范围

Python Appengine Blobstore:索引超出范围,python,google-app-engine,google-cloud-platform,google-cloud-storage,google-cloud-python,Python,Google App Engine,Google Cloud Platform,Google Cloud Storage,Google Cloud Python,我正在尝试使用BlobstoreAPI将文件上载到Google云存储。图像上传正确,但我尝试处理它(将其链接到用户)。我得到了一个错误: Index out of range 这是我的代码: class UploadHandler(blobstore_handlers.BlobstoreUploadHandler): def post(self): upload_files = self.get_file_infos('file') # 'file' is file

我正在尝试使用BlobstoreAPI将文件上载到Google云存储。图像上传正确,但我尝试处理它(将其链接到用户)。我得到了一个错误:

Index out of range
这是我的代码:

class UploadHandler(blobstore_handlers.BlobstoreUploadHandler):
    def post(self):
        upload_files = self.get_file_infos('file')  # 'file' is file upload field in the form
        file_info = upload_files[0]

        #self.response.headers['Content-Type'] = 'application/x-www-form-urlencoded'
        #self.response.headers.add_header('Access-Control-Allow-Origin', '*')
        gcs_filename = file_info.gs_object_name
        file_key = blobstore.create_gs_key(gcs_filename)

        File(file=file_key, owner=utils.get_current_user(), 
                    url= images.get_serving_url(file_key)).put()

我的代码放在
file\u info=upload\u files[0]
行。

将文件放入谷歌云存储桶的代码在哪里

我认为问题可能是这两行,这取决于你如何实现地面军事系统上传

gcs_filename = file_info.gs_object_name
file_key = blobstore.create_gs_key(gcs_filename)
仅当项目来自GCS时,gs_对象_名称才应返回有意义的结果。如果gcs_文件名不正确,这也会导致create_gs_key()失败


有关如何在Google云存储中使用blobstore API的详细信息,请参阅本文-

这只是意味着upload\u文件没有任何内容。尝试将len(upload_files)的结果发送到日志或使用调试器直接查看内容。len(upload_files)返回“1”。我已删除get_file_infos(“文件”)中的de'file'参数。现在它可以正确地获取文件了,但是我遇到了一个新问题,即生成blobKey throw create\u gs\u key()。表示期望BlobKey,得到“{large string}”。有什么想法吗?我打开了这个线程:我对Java Blobstore有一个类似的问题:有人能看一下并推荐一个解决方法吗?有一笔价值50英镑的现役赏金。