如何在将图像存储到blobstore之前设置图像的内容类型



我正在尝试使用以下代码将图像旋转并保存到GCS。

img = images.Image(blob_key=image.blob)
img.rotate(270)
t = img.execute_transforms(output_encoding=images.PNG)
filename = '/' + UploadHandler.get_gs_bucket_for_images() + 'blobstore_demo.png'
with gcs.open(filename, 'w') as f:
    f.write(t)
blobstore_filename = '/gs' + filename
key = blobstore.create_gs_key(blobstore_filename)

但是,当我尝试使用GAE的blostoreViewer查看文件时,我会得到一个编码的图像。也就是说,该blob的内容类型没有设置为image/png。那么我是如何设置内容类型的呢?

您可以定义您的图像mimetype,只需通过以下方式编辑您的代码:

img = images.Image(blob_key=image.blob)
img.rotate(270)
t = img.execute_transforms(output_encoding=images.PNG)
filename = '/' + UploadHandler.get_gs_bucket_for_images() + 'blobstore_demo.png'
mimetype = 'image/png'
with gcs.open(filename,'w', content_type=mimetype) as f:
    f.write(t)
blobstore_filename = '/gs' + filename

key=blobstore.create_gs_key(blobstore_filename)

最新更新