从数据库到元og的Blob图片:image

gal*_*lao 5 jsf facebook opengraph facebook-opengraph

我的数据库中具有中等Blob数据类型,它存储的图片具有gif,jpg,png,bmp类型。

我正在开发一个JSF Web项目,并且可以毫无问题地检索到Blob。

我正在尝试从数据库中检索Blob数据,然后尝试将其插入到打开的图形图像中,这是针对我的Facebook共享功能。

<meta property="og:image" content="blob from db image here"/>
Run Code Online (Sandbox Code Playgroud)

但是我迷路了,我不确定该怎么办,我不认为也可以使用javascript将blob转换为base64数据。

任何人都可以指出我正确的方向吗?

更新

我想将blob转换为base64数据似乎是可能的。

这是我所做的:

<h:head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <script>
        var base64;
        base64 = '#{testController.RenderLogo(item.logo)}';
        $('head').append('<meta property="og:image" content="data:image/png;base64,'+base64+'"/>');
    </script>
</h:head>
Run Code Online (Sandbox Code Playgroud)

RenderLogo方法:

public String RenderLogo(byte[] rawLogo) {
    String base64String = Base64.encodeBase64String(rawLogo);
    return base64String;
}
Run Code Online (Sandbox Code Playgroud)

它可以在某些共享网站(如ShareThis)上运行,但是通过Facebook或Twitter分享时, 414 Request-URI Too Large

有什么建议么?:C

顺便说一句,我正在通过Facebook / Twitter分享使用ShareThis