1
我正在使用AppEngine在我的应用中存储一些pickled python对象。我想直接向用户提供这些信息,并且我只是使用X-AppEngine-Blobkey
标题将文件以file.pickle.gz
文件名提供给用户。但是,当我尝试使用简单的双击将我的计算机(Mac OS)提取这些文件时,这些文件将变成file.pickle.gz.cpgz
。Appengine提供gzip压缩文件
我认为这是我的浏览器是偷偷摸摸的,并提取它们,但我不这么认为,因为
pickle.load('file.pickle.gz')
不行的,而且也不
pickle.load('file.pickle.gz.cpgz')
要存储文件,我用:
blobfile = files.blobstore.create(mime_type='application/gzip')
with files.open(blobfile, 'a') as f:
gz = gzip.GzipFile(fileobj=f,mode='wb')
gz.write(my_pickled_object)
gz.close()
files.finalize(blobfile)
我想我不理解gzips的工作方式。有人可以解释吗?
你是对的,我的代码工作。 “您是否尝试关闭并再次打开?”。 – noio 2012-02-04 11:53:16