【发布时间】:2014-03-12 10:50:30
【问题描述】:
我喜欢阻止任何缓存内容和位置,并且有一个带有控制缓存的响应标头:private、proxy-revalidate、no-cache、no-store
但似乎很多,no-cache, no-store 不足以阻止浏览器和代理缓存吗?
【问题讨论】:
-
我发现了这个,但它只涉及浏览器。 stackoverflow.com/questions/49547/…
我喜欢阻止任何缓存内容和位置,并且有一个带有控制缓存的响应标头:private、proxy-revalidate、no-cache、no-store
但似乎很多,no-cache, no-store 不足以阻止浏览器和代理缓存吗?
【问题讨论】:
这里的最佳做法是将您的响应标头设置为:
cache-control: no-cache, no-store, must-revalidate
这应该让您高枕无忧。
【讨论】:
不;没有任何东西可以保证工作。如果您的数据流经/流入该机器,无论您设置什么标题,它都可以选择存储它。这并不是说每台机器都会这样做,但您所做的只是很好地询问并希望您要求的软件能够符合您的意愿。该软件完全有可能完全忽略您的请求并存储数据。如果您不希望临时服务器能够看到数据,请对其进行加密,但如果您希望阻止最终客户端机器保留您发送的内容的副本,那么您很可能不走运
保证防止机器存储某些特定数据的唯一方法是根本不将该数据发送到机器(我承认,在很多情况下,这并不能成为非常有用的应用程序)
【讨论】: