我有一个程序,使用webrequest和webresponse检查文件是否每3秒存在一次。如果该文件存在,它会做一些事情,如果没有,等等,该部分工作正常。我有一个网页,通过创建带有消息和输入到页面中的其他变量的文件来控制程序,然后创建它并将其拍摄到程序正在检查的文件夹。还有一个“停止”按钮,用于删除该文件。
除了在启动并删除一条消息之后,第二次使用不同的消息启动它时,程序仍会看到旧消息,这种方法很有效。我在IIS中看到该文件被删除,所以这不是问题。
我已经考虑过阻止缓存的元标记,但是文件是否会动态命名解决这个问题呢?如何使程序能够检查只知道文件名的第一部分的文件?我找到了检查本地机器上目录的解决方案,但这在这里不起作用。
欢迎任何想法,谢谢。
答案 0 :(得分:0)
我不习惯IIS,但在Apache中你可以创建一个.htaccess并设置/修改HTTP-Headers。
使用“缓存控制”,您可以告诉代理/浏览器不要缓存文件。 http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html
如果它真的是一个缓存问题,这样的解决方案也可以在IIS中运行。
(要对此进行测试,请使用已关闭缓存的优先浏览器打开
答案 1 :(得分:0)
一个简单的黑客是每次都添加一些独特的URL
http://www.yourdomain.com/yourpage.aspx?random=123489797
向网址添加随机数会强制它变为新鲜。即使您不使用查询字符串参数,IIS也不知道,所以无论如何都要再次执行该页面。