【问题标题】:Etag Configuration in SpringSpring中的Etag配置
【发布时间】:2015-03-09 05:44:06
【问题描述】:

当服务返回状态代码:304 未修改时。 (这意味着资源没有被修改。)那么为什么在发送的网络调用中看到响应(在 chrome networktab 中检查)?

以下代码是为浅 etag 添加的。

<filter>
   <filter-name>etagFilter</filter-name>
   <filter-class>org.springframework.web.filter.ShallowEtagHeaderFilter</filter-class>
</filter>
<filter-mapping>
   <filter-name>etagFilter</filter-name>
   <url-pattern>/rest/*</url-pattern>
</filter-mapping>  
<filter-mapping>

【问题讨论】:

  • 您在 Chrome 中看到的响应是 200 还是 304?
  • 我在网络标签中看到它为 304,但我仍然可以看到响应。
  • 您的意思是当服务器返回 304 时您看到的是响应正文?

标签: spring rest etag


【解决方案1】:

终于找到了。

在网络选项卡中,当 304 响应到来时,从缓存中检索数据。

通过 200 请求和 304 请求期间传输的字节大小确认。

有区别。

【讨论】:

    【解决方案2】:

    我认为,您使用的客户端(浏览器)已在本地缓存响应。你看到的with 304 after request仍然是本地响应,说明没有再次从服务器获取响应。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-24
      • 2018-05-10
      • 2016-01-20
      • 2012-07-08
      • 2019-04-10
      • 2015-08-01
      • 2015-11-19
      • 2013-09-06
      相关资源
      最近更新 更多