Python Appengine Blobstore:索引超出范围
我正在尝试使用BlobstoreAPI将文件上载到Google云存储。图像上传正确,但我尝试处理它(将其链接到用户)。我得到了一个错误: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
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英镑的现役赏金。