3

我有一个与 Web 服务对话的 WEBUI(使用 html 和 DOJO)。WEBUI 中所需的数据来自使用 REST 调用的 java Web 服务。

IE (HTML/DOJO) <------ REST CALL(xml response) ----> Java WS on tomcat.

我有一定的通话数据

<AllData>
<DataList>
<type>A</type>
<xcoord>20</xcoord>
<ycoord>20</ycoord>
<length>250</length>
<width>350</width>
<imageName>images/myPic.jpg</imageName>
</DataList>
</AllData>

但是在这种情况下,如果我有一个数据列表,为了渲染每个图像,我必须再次对我的服务器进行 http 调用。

相反,我开始知道我可以将图像本身嵌入到 REST XML 响应中。ImageIO我知道我可以通过 Java 中的/BufferedImage类读取图像。但是如果我用它来发送读取的数据,是否可以在 Dojo 上渲染图像?

如果有任何其他方法可以在 REST 响应(XML 或 JSON)中发送图像并使用 Dojo 渲染相同,请告诉我。

4

1 回答 1

1

我能想到的一件事是Data URL。它允许您以 URL 形式存储整个图像。在客户端,你可以插入一个<img>标签,src="data:image/gif;base64,R0lGOD......你就完成了。

这样做的缺点是,编码开销很大,你会保存一个请求,但要传输的数据更大。我只在 CSS 文件中将这种方法用于小图标,这是合理的。

但我会再考虑一下。再多一个要求真的那么糟糕吗?如果没有,您可以运行与上述相同的方法,只需使用普通 URL(以防您的图像可以从 Web 访问)。

于 2013-09-16T09:37:25.497 回答