浏览器GET请求返回旧图像

exx*_*us7 5 html javascript jquery tomcat image

我正在尝试使用GET请求从服务器检索图像.图像不断变化,所以我想每秒抓取几次图像(目的是显示图像并最终模仿视频).但是,GET请求出了问题.无论我尝试获取图像的速度有多快(每1秒,100毫秒等尝试一次),它每5秒钟只返回一个新图像.它表现得像某个缓存的图像,它只是每5秒更新一次缓存,所有其他时间都会返回旧的,重复的图像.

我已经做了以下尝试来解决问题:

  • 验证服务器端的图像实际上每100毫秒左右更新一次,这意味着网页确实返回了大部分GET请求的旧图像,
  • 通过开发人员选项以及以隐身模式运行网页,关闭浏览器缓存.这是Chrome的方式.
  • 通过在配置文件中设置maxKeepAliveRequests = 1(禁用)来关闭Tomcat服务器中的keepalive.

然而它仍然只是每5秒检索一次新图像.

Example Request Headers:
  Cache-Control: no-cache
  Connection: keep-alive     <-- Could this be the problem? 
  Pragma: no-cache

Example Response Headers:
  Cache-Control: no-cache
  Cache-Control: no-store
  Connection: close
  Pragma: no-cache
  Server: Apache-Coyote/1.1
Run Code Online (Sandbox Code Playgroud)

我的查询(每次加载图像后经过一段时间后执行):

document.getElementById("videoDisplay").src = filename + "?random="+(new Date()).getTime();
Run Code Online (Sandbox Code Playgroud)

小智 2

发现这个在http://tomcat.apache.org/tomcat-5.5-doc/config/context.html 阅读这个条目..

缓存TTL

缓存条目重新验证之间的时间量(以毫秒为单位)。如果未指定,则默认值为 5000(5 秒)。

可能这就是你问题的根源