问题标签 [http-status-code-304]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
504 浏览

apache-flex - AMF 是否支持缓存?

换句话说:我可以用 304 响应并让它“正常工作”吗?

0 投票
1 回答
3884 浏览

caching - 从 IIS 中删除 Etag 和 Last-Modified 标头

您是否知道可以通过完全删除 ETag 和 Last-Modifed 响应标头来防止重新验证浏览器缓存中的文件和随后的 304 响应?

当然,这在 Apache 中很容易,但在 IIS 6 中则一清二楚。有谁知道如何在 IIS 中删除这两个标头?

0 投票
7 回答
6432 浏览

google-app-engine - 如何控制 WebKit 中的 Google App Engine 缓存行为(etags 疯了)?

情况:运行一个 Google App Engine 网站,我的静态内容的 default_expiration 设置为“14d”

问题:在 Chrome 和 Safari 中,访问 URL(重新加载,只是将光标放在地址栏中并按 Enter 键)会导致使用 If-None-Match 标头触发大量请求。正如预期的那样,响应始终是 304 Not Modified。我可以看到这些请求在 Charles 或 Fiddler 等调试代理中被触发。

想要:完全避免针对静态内容的这些请求和 304 响应——只需信任浏览器的缓存内容(当它可用时)。

我们使用标准的“缓存静态内容很长时间,当我们需要破坏缓存时,我们会处理将 ?version={version} 修改附加到我们的查询字符串”系统,所以我们真的很想避免304 的。

信念:我认为这是由应用引擎随每个静态内容响应发送的 etag 标头引起的。应用程序引擎 SDK 不会向下发送此标头,并且在使用 SDK 时我看不到此 304 行为。

有什么建议吗?你能关闭应用引擎静态内容的 etags 吗?

更新了一个静态内容示例: http ://www.khanacademy.org/stylesheets/shared-package/compressed.css

0 投票
2 回答
1144 浏览

asp.net - 由于重写模块,图像未返回 304 响应代码

在我们的 ASP.NET Web 应用程序中,我们使用自己的类作为重写模块。它将所有请求发送到服务器,充当引导程序。

要访问我们 Web 应用程序上的图像,浏览器会请求domain.com/ResourceItem.aspx?Id=74

没有正确的 URI 是否意味着服务器永远不会响应304 NOT MODIFIED

有谁知道如何获得 304 响应,因此浏览器不必每次刷新都下载每个图像?

0 投票
3 回答
3746 浏览

jquery - 如何修复浏览器缓存和未修改的 JSON 响应?jQuery.ajax({ifModified:true,cache:true}) JSON 请求中断数据响应

如何修复浏览器缓存并notmodified响应 JSON?jQuery.ajax({ifModified:true,cache:true})JSON 请求在data响应时中断。

第一次浏览器请求http://localhost/api返回状态200 OK和nexts304 Not Modified

XHR 第一次返回正常:

但在下一次返回data undefined

如何解决?似乎是 jQuery 1.5.1 的错误。预期结果:

0 投票
5 回答
25682 浏览

ajax - 如何检查 jQuery.ajax() 请求标头状态是否为“304 未修改”?

如何检查jQuery.ajax()请求标头状态是否为“304 未修改”?

jqXHR.status200即使请求的标头是“304 Not Modified”,通常也会返回。

ifModified:true 没有太大帮助,因为它破坏了 XHR 数据请求。

0 投票
3 回答
28387 浏览

jquery - jQuery AJAX 在不应该产生 304 响应时

这真的让我摸不着头脑。那是因为它只发生在 IE 中,而不是 Firefox,而且我的印象是 jQuery 实际上是浏览器中立的。在过去的几个小时里,我一直在研究这件事,并且至少已经确定了正在发生的事情。

这个jqGrid:

由这个函数填充:

这是从模型中干净地填充的。这不是问题。使用删除功能时会出现问题,该功能在控制器中格式化,如下所示:

并调用此函数

}

(showGlobalMessage 是一个内部函数,它创建一个特别格式化的 blockUI)

ajax 在控制器中调用了一个方法,但问题在我们做到这一点之前就出现了,所以除非有人认为它很重要,否则我不会发布该代码。发生的情况是,通常由于莫名其妙的原因,调用 PC/DeleteAssociation 的第一次 ajax 爆发返回 304(未修改)响应。我知道当什么都没有改变需要刷新时,就会发生这种情况。但这不是一个获取,它应该被视为一个帖子,我的印象是 jquery.ajax 被设计为,除非另有说明,否则不会生成 304 响应。我显然在这里遗漏了一些东西,并且盯着它看太久了,我自己也没有抓住它。有人看到我错过了什么吗?谢谢你。

0 投票
1 回答
623 浏览

windows-phone-7 - HttpWebRequest 响应超时,状态码为 304

与我们的 REST Web 服务通信时,返回状态码为 304 的 http 响应,表示请求的资源没有更改。然而,我们的 WP7 应用程序使用HttpWebRequest类,手机在成功读取此类响应之前需要 2 分钟。

我可以看到 web 服务立即响应 304 并且没有正文数据,请求本身没有超时,我们的应用程序能够成功处理其他响应代码 [404、201 等]。会不会是 Silverlight 浏览器“缓存”问题?

任何人都可以确认他们以前见过这个,或者对这个问题有任何想法吗?

干杯,阿拉斯代尔。

== 附加信息 ==

由于WP7 限制了某些请求标头,我们对所有资源请求使用自定义的 [If-Modified-Since] 标头。此自定义标头 [X-If-Modified-Since] 被 web 服务前的防火墙识别并修改回标准标头。我不确定这是否与上述问题有关。

0 投票
3 回答
10228 浏览

asp.net-mvc-3 - ASP.NET MVC:如何返回 304“未修改”状态?

ASP.NET MVC 3.0、IIS 7、.NET 4

我有一个操作返回很少更改的数据(几乎是静态的)。

有没有简单的方法:

  1. 从操作中返回 304“未修改”;
  2. 在响应中包含“Last-Modified”时间戳。

return Content('my data');用于动作结果。

基本上我想要一个简单的方法来做这篇文章中谈到的事情:http ://weblogs.asp.net/jeff/archive/2009/07/01/304-your-images-from-a-database.aspx

0 投票
2 回答
3094 浏览

apache - 304 响应未使用 mod_headers 为 apache 设置自定义标头

这是我的配置。我有一个环境变量,它告诉我我在哪个集群上,它作为“X-Cluster”中的标头传递。这在 200 或 404 响应上返回正常,但 304 Not Modified 响应从不返回标头,即使它返回其他适当的 Apache 标头。

如何在 304 响应期间设置标头?