Я создал сгустки в GAE Blobstore, и эти файлы, созданные успешно, проблема, когда я пытаюсь служить эти файлы с помощью BlobKey, я получил Content-Length = 0, так как это:Blobs в Blobstore в GAE
Status: 200 OK
Cache-Control: no-cache
X-AppEngine-BlobKey: crXwVb6vKoS8OykvgPmSew==
Content-Type: application/zip
Content-Disposition: attachment; filename="test.zip"
Expires: Fri, 01 Jan 1990 00:00:00 GMT
Content-Length: 0
такой, что (test.zip) является файлом, созданным в BlobStore, я проверил BlobStore в консоли администратора, и этот файл был успешно создан. EDIT: код download.py:
def mime_type(filename):
return guess_type(filename)[0]
class ServeHandler(blobstore_handlers.BlobstoreDownloadHandler):
def get(self):
blob_key = self.request.get('key')
blob_key = str(urllib.unquote(blob_key))
blob_info = blobstore.BlobInfo.get(blob_key)
content_type1 =mime_type(blob_info.filename)
save_as1 = blob_info.filename
self.send_blob(blob_key,content_type=content_type1,save_as=save_as1)
def main():
application = webapp.WSGIApplication([
(r'/download.*', ServeHandler),
], debug=True)
run_wsgi_app(application)
if __name__ == '__main__':
main()
ключ существует в URL, как:
http://localhost:8080/download.py?key=Es9f00P29wNTZoeL9ccS4g==
и я получить его, чтобы получить пятно от Blobstore.
Заранее спасибо.
Можете ли вы показать обработчик? –
@Peter Knego: Хорошо, я отредактирую вопрос. –
Откуда вы взяли blobkey? Похоже, что он закодирован Base64. –