序幕
我的 Web 应用程序(关键字:HTML、JavaScript、jQuery;必须在IE8+、Chrome、FF 中工作)必须呈现来自某种网络摄像头的实时图像数据。这个“网络摄像头”集成了一个网络服务器,提供实时图像数据BMP
。
通过设置标签的src
属性来“下载”图像数据。img
问题
我想在客户端分析图像数据。为此,我想使用XMLHttpRequest
(使用此提供的 stackoverflow 答案)预下载图像,然后更新标签的src
属性。img
我的理解是,浏览器应该使用通过XMLHttpRequest
.
问题是,浏览器(IE8+、FF 和 Chrome)向服务器发出另一个请求以再次下载图像(即它不使用缓存的数据或数据一开始就没有缓存)。
如何让浏览器缓存数据并使用它而不是发出另一个请求?
附录
服务器Cache-Control: max-age=5, public
为Chrome发送一个,Cache-Control: no-store, max-age=5
为所有其他浏览器发送一个。
在Chrome中,我可以通过发送一个304 Not Modified
. 浏览器将使用缓存的图像。在所有其他(提到的)浏览器中,这不起作用。
更新 1
我知道,我可以使用Data URI Scheme来更新src
属性。但是,这不适用于 IE8(请参阅上面的要求),因为 IE8 仅支持最大 32KB 的内容。