Client HTTP Handling & ETag
本文关键字:ETag amp HTTP Handling Client | 更新日期: 2023-09-27 18:31:26
我正在开发一个小型的SilverLight应用程序,该应用程序使用WebClient来请求REST服务。据此:
http://msdn.microsoft.com/en-us/library/dd920295(v=vs.95).aspx
使用"客户端 HTTP"处理时不应进行缓存。
我调用的 REST 服务使用 ETag,因此在没有缓存的情况下,我不会期望对我的服务的第二次调用将包含 If-None-Match 标头?
此外,当 REST 服务返回"304"(未修改)时,我仍然会得到一些数据,表明数据是从缓存中返回的。
REST 服务还将"Vary"标头设置为"接受"(以便在生成缓存键时应考虑 Accept 标头),但似乎这不起作用......
所以我有点被没收了,不管缓存是否存在......好像已经走了一半...
有人可以澄清吗??
蒂亚
索伦
我建议不要在WCF服务上使用ETags。 在 IIS 中,服务或包含该服务的目录需要包含 HTTP 响应标头,将内容设置为立即过期,以便客户端上没有缓存的可能性。 这样,对服务的调用不会导致来自服务器的 HTTP 304 响应。