您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在Python中显示Blob图片(App Engine)

在Python中显示Blob图片(App Engine)

首先,我认为您正在将图像密钥和图像二进制数据混合在一起。

您应该将图像密钥(字符串)写入模板:

 <img src="/disp?key={{image_key}}" />

即,如果您只是将image.key()传递给模板,则最终的html应该如下所示:

 <img src="/disp?key=AC3CK3333KCCK2K213" />

您可以将其视为一个两步过程。您呈现您的模板。用户浏览器呈现html并获取您的图像处理程序。然后,图像处理程序发送二进制数据。

(顺便说一句,我的印象是您使用<img ... /><img ...></img>都不关闭html标签<img .../></img>

在图像处理程序disp_image中,您应该返回图像的二进制数据。看来您的第一个条件还可以,但是我认为您的else条件将仅返回文本“ /static/unkNown.gif”,而不是gif文件的实际二进制数据。

    else:
        self.response.headers['Content-Type'] = "image/png"
        return self.response.out.write("/static/unkNown.gif")

您应该将unkNown.gif存储在数据存储区中,并通过键引用它,或者您应该将"/static/unkNown.gif"网址写到模板中以代替"/disp?key=..."

最后,最简单的测试图像处理程序是否正常的方法是,当您插入<domain>/disp?key=...浏览器URL栏时,它将加载所需的图像。

python 2022/1/1 18:25:48 有170人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶