77得票2回答
在Express.js中,ETag是如何工作的?

Expressjs自动发送ETags。我想知道ETag是如何生成的。它是基于由get例程动态生成的内容,还是有办法通过不经过生成内容(从DB获取的动态内容)的过程即可传回相同的ETag。 也许可以使用一个中间件,它仅检查是否为有效会话ID并返回客户端给出的相同ETag,或者基于URL +会话...

54得票5回答
使用HttpWebRequest时,为什么在某些链接上会出现“(304)未修改”错误?

有没有想法为什么我使用HttpWebRequest访问某些链接时,代码中会出现"The remote server returned an error: (304) Not Modified."? 我使用的代码来自Jeff在这里的帖子(该页面似乎已经消失,请参见Wayback Machine...

20得票7回答
Chrome - 为什么会发送if-modified-since请求?

我有一个包含许多小图标的页面。在使用Chrome浏览器时,每次重新加载页面时,Chrome都会带上if-modified-since头从服务器请求每个图标。 所有图标都附带了过期和最大年龄头信息。而Firefox则从其缓存中加载图像。 为什么Chrome会这样做,我该如何防止它? 谢谢!

18得票1回答
(弱) ETags 和 Last-Modified

据我理解,ETag是在RFC 2616(HTTP/1.1)中引入的,它是Last-Modified-Header的一种后继者,旨在为软件架构师提供更多控制缓存重新验证过程的方式。 如果同时存在Cache-Validation-Headers(If-None-Match和If-Modified...

16得票2回答
了解 If-Modified-Since HTTP 头部

我正在查看一个试图使用请求对象的If-Modified-Since头部的缓存库。问题在于,这个头部从未被设置过,它总是空白的,这很符合我的预期,因为它是一个请求。 你如何强制请求具有If-Modified-Since标头?或者我对它的作用完全误解了。 以下是我参考的函数。public fu...

14得票2回答
在PHP脚本中处理If-modified-since头部信息

我有一个PHP脚本,它通过?img=参数调用。 该参数的值是一个被URL编码的图片URL。 我的脚本检查是否已经在我的服务器上存储了该图片。 如果没有-它会下载它。之后,它可选地调整图像大小并将其发送到STDOUT,即返回给请求浏览器,附加了Content-Type和Last-modif...

12得票3回答
If-Unmodified-Since/If-Modified-Since的作用是什么?它们不是被ETags取代了吗?

使用HTTP头实现条件请求有两种不同的方式,这两种方式都可以用于缓存、范围请求、并发控制等: If-Unmodified-Since和If-Modified-Since,客户端发送资源的时间戳。 If-Modified和If-None-Modified,客户端发送资源的ETag表示。 ...

10得票6回答
Chrome不会发送“If-Modified-Since”请求头

我希望浏览器在除第一次访问外,每次都添加"If-Modified-Since"请求头以避免不必要的流量。 响应头如下: Accept-Ranges:bytes Cache-Control:max-age=0, must-revalidate Connection:Keep-Alive Co...

10得票1回答
边缘浏览器收到304状态码时无法播放视频

我发现当播放视频第二次时,Edge浏览器无法正常工作。我的应用程序使用默认的<video>标签,而Edge在第二次加载视频时发送了一个If-Modified-Since头信息。如果我的服务器返回304未修改状态码,则无法正常工作。将其更改为返回完整视频则可以解决问题。 有人能验证...

9得票1回答
基于If-Modified-Since头信息修改REST API表示是否有效?

我希望在我的API中实现“获取更改值”的功能。例如,假设我有以下REST API调用: GET /ws/school/7/student 这将获取学校7中的所有学生。不幸的是,这可能很多。因此,我想修改API,仅返回自特定时间以来已修改的学生记录。(使用情况是另一个系统运行夜间进程,从我...