Javascript 图像数据的更改未反映在ModelView中

Javascript 图像数据的更改未反映在ModelView中,javascript,jsp,caching,servlets,Javascript,Jsp,Caching,Servlets,在其中,我必须创建一个简单的图像编辑器来执行诸如触发器、触发器、添加边框等操作。我使用jsp servlet。无论何时执行操作,都会向服务器发送一个POST ajax请求,其中包含数据-图像服务器相对路径和操作名称。我使用ImageMagick执行操作-针对质量问题。一旦更改完成(直到使用ajaxloader),响应将发送回视图。在一个操作完成后用户单击该操作之前,一切正常。旧图像-与以前的图像编辑操作一起再次显示,并在一段时间后反映更改。我在谷歌上搜索了一下,得出的结论是,这是由于缓存。我尝试

在其中,我必须创建一个简单的图像编辑器来执行诸如触发器、触发器、添加边框等操作。我使用jsp servlet。无论何时执行操作,都会向服务器发送一个POST ajax请求,其中包含数据-图像服务器相对路径和操作名称。我使用ImageMagick执行操作-针对质量问题。一旦更改完成(直到使用ajaxloader),响应将发送回视图。在一个操作完成后用户单击该操作之前,一切正常。旧图像-与以前的图像编辑操作一起再次显示,并在一段时间后反映更改。我在谷歌上搜索了一下,得出的结论是,这是由于缓存。我尝试了所有可能的事情-

  • 将图像的服务器相对路径的路径附加一个时间戳

    http://172.16.3.72:8080/~user/dataDir/workspace/2/tempData/ResizeImage.jpeg?random=1381852940376 http://172.16.3.72:8080/cdl/captureImage.htm?pageNumber=2&isbn=AndItWorksFinally2?random=.332223223 http://172.16.3.72:8080/~user/dataDir/workspace/2/tempData/ResizeImage.jpeg?random=1381852940376
  • 在ajax的url上附加一个时间戳

    http://172.16.3.72:8080/~user/dataDir/workspace/2/tempData/ResizeImage.jpeg?random=1381852940376 http://172.16.3.72:8080/cdl/captureImage.htm?pageNumber=2&isbn=AndItWorksFinally2?random=.332223223 http://172.16.3.72:8080/cdl/captureImage.htm?pageNumber=2&isbn=AndItWorksFinally2?random=.332223223
  • 已使用缓存:jquery中为false

  • 使用标头禁用缓存

    response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); response.setHeader("Pragma", "no-cache"); response.setDateHeader("Expires", -1); setHeader(“缓存控制”,“无缓存,无存储,必须重新验证”); setHeader(“Pragma”,“无缓存”); setDateHeader(“Expires”,-1) 但所有这些都没有帮助。是否存在其他问题而不是缓存问题? 当我们在查看图片时单击“下一步”按钮时,想知道facebook如何如此快速地从服务器加载图像(没有重复)。setHeader(“缓存控制”,“无缓存,无存储,必须重新验证”)
    response.setHeader(“Pragma”,“无缓存”)
    
    response.setDateHeader(“Expires”,-1)

    不要从jquery中使用它,而是尝试在请求的页面本身上传递标题


    并尝试在请求的页面上使用唯一的图像名称。通常浏览器会显示以前从缓存中渲染的图像。

    它工作正常,先生!现在,每次我都会给作为服务器响应发送的映像指定一个唯一的名称—在映像的名称上附加时间戳!谢谢!