【问题标题】:Send base64 string as image to the client将base64字符串作为图像发送给客户端
【发布时间】:2014-10-13 00:04:09
【问题描述】:

我设法将图像作为 base64 编码字符串保存在我的数据库中,但我想知道如何以一种在客户端将其解释为图像的方式提供 base64 字符串。

我做了一个 WS,它返回这样的字符串:

return ok(myBase64String).as("image/jpeg")

但图片无法在浏览器中显示。

如果我解码字符串然后发送显示图像的字节数组,现在我不明白为什么我必须解码我已经编码的图像才能在客户端显示它??

byte [] test =  Base64.decodeBase64(event.getPhoto());
                return ok(test).as("image/jpeg");

这可行,但为什么我必须解码我的 base 64 字符串??

有人有想法吗? 谢谢!!

【问题讨论】:

    标签: image web-services rest playframework playframework-2.0


    【解决方案1】:

    如果要使用Base64,需要使用data uri scheme

    <img src="data:image/png;<base64>" />
    

    否则,您必须传入二进制表示的路径。这就是 Assets 控制器所做的,将文件作为二进制文件提供。

    【讨论】:

    • 我从网络服务中检索数据,我会从浏览器的图像缓存中获利吗?用这个?
    • 你是怎么做到的?如果在服务器端呈现,则仅缓存 HTML。
    猜你喜欢
    • 2019-04-11
    • 2015-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-10
    • 1970-01-01
    相关资源
    最近更新 更多