问题标签 [if-modified-since]
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.
android - Android WebView 缓存不会过期
在我的 Android 应用程序中,我使用 WebView 并遇到了缓存问题。缓存文件后,WebView 将永远保留它(或至少在我手动删除缓存之前)。
在 Apache Access-Log 中,我看到一旦文件被缓存,WebView 就不会发送请求。如何使用常见的 ETag 和 HTTP-Code 304 设置 WebView 以发送检查文件是否过期的请求?在桌面浏览器(Firefox、Chrome)上,缓存按预期工作。
这是我的代码:
EWebViewClient 仅覆盖:“shouldOverrideUrlLoading, onPageFinished, onLoadResource, onReceivedError”
我非常感谢您能提供的任何帮助。
c# - 我不能在 WebClient 上设置 If-Modified-Since 吗?
我正在使用WebClient
检索网站。我决定设置If-Modified-Since
是因为如果网站没有改变,我不想再得到它:
Last_refreshed
我存储上次访问该网站的时间的变量在哪里。
但是当我运行它时,我得到一个WebException
文本:
原来API 文档提到了这一点:
此外,在使用
WebClient
对象时,其他一些标头也受到限制。这些受限标头包括但不限于以下内容:
- 接受
- 联系
- 内容长度
- 期望(当值设置为“100-继续”时)
- If-Modified-Since
- 范围
- 传输编码
该类
HttpWebRequest
具有用于设置上述某些标头的属性。如果应用程序设置这些标头很重要,那么HttpWebRequest
应该使用类而不是WebRequest
类。
那么这是否意味着无法设置它们WebClient
?为什么不?If-Modified-Since
在 normal中指定有什么问题HTTP GET
?
我知道我可以只使用HttpWebRequest
,但我不想这样做,因为它的工作量太大(必须做一堆转换,不能只是将内容作为字符串获取)。
另外,我知道使用 System.Net.WebRequest 时无法设置一些 HTTP 标头是相关的,但它实际上并没有回答我的问题。
php - 带有时区的 if-modified-since 的 PHP 时间戳
我将时间戳存储在 MySQL 中,格式如下:
时间戳是使用服务器的默认时区保存的,在我的例子中是EST
. 我需要发送CURL
带有if-modified-since
标头的请求。
我将时间转换为的最佳方式是EST
什么GMT
?还有一种方法可以通过检查服务器时区来使其完全通用(而不仅仅是硬编码EST
)?
caching - 如何防止 Web 浏览器对缓存文件发出“If-Modified-Since”请求?
我正在尝试在 nginx 中设置缓存,以便不需要重复获取图像。If-Modified-Since
除了浏览器仍在为每个带有标题的文件发出请求外,它似乎正在工作。然后服务器响应,304 Not Modified
实际文件不再传输。我可以看到在很多情况下这是多么理想的行为,但在我的特殊情况下,文件最多可以过期一周,我更愿意跳过额外请求带来的延迟。
是否可以添加缓存标头,告诉浏览器始终自动使用缓存版本,直到到期?我当前的 nginx 配置是
c# - System.Net.Http.HttpClient 添加 If-Modified-Since 标头
我正在尝试从 Windows 通用应用程序发出 Http Get 请求并看到奇怪的行为。(不确定它是通用应用程序的事实是否相关)。
有问题的简化代码是这样的:
在按预期工作且变量s
包含 json 内容的单元测试或控制台应用程序中。
但是,在我尝试添加该代码的应用程序(面向 Windows 10 构建 10240 的通用 Windows 应用程序)中,原始 http 请求如下所示:
标题If-Modified-Since
正确地导致谷歌返回304 - not modified
,所以我没有得到任何 json 文件。问题是我没有添加该标题,我也无法弄清楚它被添加到哪里以及如何停止它。
是否存在可以预料到这种情况的情况,如果是,如何控制这种行为。
node.js - 解析 If-Modified-Since 标头 (node.js)
我正在尝试在我正在编写的服务器托管程序中实现发送 304 标头以提高性能,但我不知道如何解析 If-Modified-Since 标头的日期。我还想知道如何确定 If-Modified-Since 日期是否比我的代码中的另一个日期更早/更新。
java - 第二次刷新后,上次修改的标头不起作用
如果没有更改,我想从缓冲区加载 photourl,但它仅在第一次刷新页面后才有效。当我第一次打开页面时,这是我的回应
刷新后我有 304 状态和响应:
并应要求
再次刷新后,我有 200 个状态,例如第一次访问,并且从服务器重新加载数据。
这是我的控制器。
r - 使用 httr GET 时不考虑 If-Modified-Since?
我的要求/目标:
我正在从公共页面检索过去 3 个月的 Facebook 帖子,并且我只想选择最近(过去 2 天)修改过的帖子。
我正在使用 httr R 包,并使用 GET 函数来完成上述操作。
我尝试了以下方法:
url.data <- GET(url, config(token=token), config(add_headers("If-Modified-Since" = "2016-09-08 11:45")))
url.data <- GET(url, config(token=token, add_headers("If-Modified-Since" = "2016-09-08 11:45"))
在上面的“url”中,“since”、“until”字段指定了需要检索帖子的时间段(3 个月)。'token' 是用于身份验证的 OAuth 令牌。
以上两种方法都是检索所有帖子,而不是仅检索过去 2 天内修改过的帖子。
是否有另一种将 If-Modified-Since 传递给 GET 的方法,这将导致仅检索所需的帖子?
注意:我已经检查了与 If-Modified-Since 相关的这些帖子,但它们没有回答我的问题:
还有一些与我的场景不完全相关的问题。
任何帮助,将不胜感激。
amazon-web-services - Cloudfront如何每次都避免If-Modified-Since标头请求
AWS Cloudfront 文档说:
如果您将特定源的 TTL 设置为 0,CloudFront 仍将缓存来自该源的内容。然后,它将发出带有 If-Modified-Since 标头的 GET 请求,从而使源有机会发出信号,表明 CloudFront 可以继续使用缓存的内容(如果它在源处没有更改)
我需要配置我的动态内容。我已经将 TTL 设置为 0 .. 我希望每个请求总是去 Origin。有没有办法避免这个带有 If-Modified-Since 标头的额外 GET 请求!为什么每次都有这个额外的要求!
rest - 如何处理asp.net核心和rest api上的HTTP响应缓存?
我们正在我们的 asp.net 核心项目中创建一个 rest api。
为了管理缓存,我们使用响应缓存中间件和将这些标头添加到响应的 responseccache 属性:
缓存控制:public,max-age=2592000
现在我想做的是处理“ETag”标题或“Last Modified”和“If modified since”标题。
是否有任何包可用于简化这些标头的实现?
在这里,我只想管理标头的缓存,有很多生成 Etag 的解决方案,但它仍在执行服务器端代码。