2014-01-20 58 views

回答

1

饼干

你可以返回到图像显示为正常图像的响应体,然后设定相同的请求的会话cookie。会话cookie将包含JSON数据。一旦图像加载,您可以通过javascript从cookie中提取JSON数据。

这将适用于所有浏览器。只有JSON的大小可以返回。最大尺寸看起来是4093 bytes

图像编码

如果你的JSON是太大,不适合在一个cookie,那么你可以编码图像作为一个base64对象和JSON响应返回的图像数据。

在这种情况下,您必须在画布上重建图像或使用图像数据url格式动态创建图像对象,作为Kevin评论中的url。

图像编码的一个缺点是响应的大小增加。粗略地说,在base64中编码后的图像大小将是原始图像的37% larger


最终它取决于您的具体需求,以哪种方法最符合您的要求。

+0

您不必在画布上重新构建图像。请参阅http://www.bigfastblog.com/embed-base64-encoded-images-inline-in-html –

+0

第一个选项对我无效,因为这纯粹是移动应用程序使用的Web API。第二种选择甚至没有发生在我身上......大声笑。非常感谢。然而,你是积极的,这是绝对最好的方法吗? –

+0

@Daniel非常感谢你,我已经解决了我的问题。我不必一起发送图像和数据。我可以在JSON中发送图像的URL,以便客户端可以下载它。干杯 –

相关问题