标签: browser-cache

浏览器使用多少缓存空间?

我很好奇各个浏览器在过早删除旧的缓存文件之前会缓存多少MB/GB.你知道吗?对于奖励积分,将删除缓存文件的顺序(超出已过期的文件).

browser filesystems caching browser-cache local-storage

1
推荐指数
1
解决办法
1777
查看次数

Jquery AJAX没有在ie中刷新页面

我有一个ASP.Net应用程序,它使用jQuery的AJAX POST方法来更新DOM.

  1. 用户输入日期
  2. 用户单击链接按钮
  3. JQuery ajax调用数据库后会加载一个带有请求数据的div.

除非用户在IE中手动刷新页面,否则一切正常.
如果他们进行了更改,则点击浏览器刷新按钮,然后再次执行这三个步骤,即使数据库已正确更新,也不显示他们刚刚输入的更新数据.

它显示原始数据.

他们必须完全关闭浏览器并重新打开它以查看更改.

这只发生在IE中.
FF和Chrome会在刷新时显示更改.

我在这里错过了什么?

asp.net ajax jquery browser-cache

1
推荐指数
1
解决办法
1908
查看次数

缓存在 HTTPS 中不起作用

我之前曾问过这个问题,并错误地认为我的问题并不存在(请参阅:缓存和 HTTPS)。我错了; 问题确实存在。

这是我的问题的描述:

  1. 当我从 HTTP 页面加载资源(比如resource-a)时(在 HTTP 页面上,所有资源都来自 HTTP),我得到一个200 OK. 当我重新加载页面(或转到另一个 HTTP 页面)时,资源-a 会获取一个304 Not Modified.
  2. 当我从 HTTPS 页面加载资源 a 时(在 HTTPS 页面上,所有资源都将来自 HTTPS),资源 a 从 HTTPS 加载并获得200 OK. 当我重新加载页面(或转到另一个 HTTPS 页面)时,我会得到一个304 Not Modified.
  3. 当我返回到一个 HTTP 页面时,资源-a 仍然得到一个304 Not Modified.
  4. 当我返回到一个 HTTPS 页面时,资源-a 会得到一个200 OK. 缓存副本发生了什么?我怎样才能让它缓存?

这是标题的示例:

Request URL: https://styles.mydomain.com/assets/styles/main.css
Request Method: GET
Status Code: 200 OK

Request Headers
Accept: text/css,*/*;q=0.1
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3 …
Run Code Online (Sandbox Code Playgroud)

.htaccess https firebug caching browser-cache

1
推荐指数
1
解决办法
2239
查看次数

我可以在 PHP 中使用 filemtime('style.css') 强制浏览器重新加载 css 吗?

我可以在 PHP 中使用 filemtime 强制浏览器重新加载 css 吗?

 $mtime = filemtime('style.css');
 echo "\style.css?mod=" . $mtime;
Run Code Online (Sandbox Code Playgroud)

filemtime 是不是太慢了?

css php caching browser-cache

1
推荐指数
1
解决办法
1706
查看次数

在Laravel中使用HTTP缓存,生成静态文件路径

我打算在我的下一个项目中使用Laravel框架.到目前为止,我仍然陷入组织项目中静态内容的链接(图像,脚本等).例如,我有这个缓存选项(缓存所有静态文件,nginx):

location ~* \.(jpg|jpeg|gif|css|png|js|ico|html)$ {
    expires max;
}
Run Code Online (Sandbox Code Playgroud)

如何建立文件main.js的链接?如果文件被修改,如何告诉代理文件已过期?

在我目前的项目中,我有版本控制系统,它使用文件修改时间为文件生成唯一的前缀.所以链接就像http://site.com/22566223435/js/main.js下次当文件更改链接自动更改时.

Laravel实现此功能的最佳做法是什么?谢谢!

php http-caching browser-cache laravel

1
推荐指数
1
解决办法
5050
查看次数

Android WebView - 清除缓存

我有一个WebView控件,我想每次显示当前站点,但我认为WebView只显示该站点的缓存版本.我尝试了这里发现的一切,但似乎没有任何效果.我还试图从context.getCacheDir()中删除所有文件,但没有成功.我能做什么?

这是我在onCreate方法中的代码:

    clearCache(this, 0);

    setContentView(R.layout.webview);

    deleteDatabase("webview.db");
    deleteDatabase("webviewCache.db");

    mWebView = (WebView)findViewById(R.id.webview);
    mWebView.setWebViewClient(new CenterWebViewClient(this));
    mWebView.setWebChromeClient(new CenterWebChromeClient(this));
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.getSettings().setAppCacheEnabled(false);
    mWebView.getSettings().setAppCacheMaxSize(1);
    mWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);

    String  url = "https://www.exacmple.com";

    if (url != null) {
        Map<String, String> noCacheHeaders = new HashMap<String, String>(2);
        noCacheHeaders.put("Pragma", "no-cache");
        noCacheHeaders.put("Cache-Control", "no-cache");
        mWebView.loadUrl(url, noCacheHeaders);
    }
Run Code Online (Sandbox Code Playgroud)

clearCache函数:

static int clearCacheFolder(final File dir, final int numDays) {

    int deletedFiles = 0;
    if (dir!= null && dir.isDirectory()) {
        try {
            for (File child:dir.listFiles()) {

                //first delete subdirectories recursively
                if (child.isDirectory()) {
                    deletedFiles += …
Run Code Online (Sandbox Code Playgroud)

android webview browser-cache

1
推荐指数
1
解决办法
2万
查看次数

如何检查/测试应用程序是否未在浏览器上缓存?

我已经写了一个class CacheControlFilter implements javax.servlet.Filter to set header 来确保应用程序没有缓存。也已经在 web.xml 中完成了输入

<filter>
    <filter-name> Cache controller filter</filter-name>
    <filter-class>com.filter.CacheControlFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>Cache controller filter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>
Run Code Online (Sandbox Code Playgroud)

请建议我如何检查/测试这是否有效?如果您想了解更多信息,请告诉我。

java spring caching cache-control browser-cache

1
推荐指数
1
解决办法
1037
查看次数

如何在PHP中管理浏览器缓存?

我的想法很简单,在一些css文件中更改所有css文件并生成一个缩小的文件.然后告诉浏览器清除缓存.如果浏览器缓存中存在未更改的文件,则使用它 - 因此用户无需每次都重新下载.

我正在使用以下代码段来执行此操作.但是使用缓存的部分有点错误,大部分时间它都有效,但有时它会告诉浏览器使用缓存版本(因为没有变化),浏览器使用旧版本,用户必须进行客户端缓存刷新.

你能给我一些建议怎么做,所以每当发生变化时它会刷新客户端浏览器缓存,如果没有变化就只使用缓存?

$cssFiles = getCssFiles();

$fm = new FileMinifier(FileMinifier::TYPE_CSS);
$lastModified = $fm->lastModification($cssFiles);
$savedLastModified = DateUtils::convertToTimestamp($this->system->systemSettings['cssLastChange']);

$etagFile = md5('css-file');
header("Content-type: text/css");
header("Pragma: public");
header('Cache-Control: public');
header("Last-Modified: " . gmdate("D, d M Y H:i:s", $lastModified) . " GMT");
header("Etag: $etagFile");

// if there is a change - generate new minified css
if ($lastModified > $savedLastModified)
{
    // take files minify them, save it and redirect to output, update last change time
    ...
}
// or use already generated
else …
Run Code Online (Sandbox Code Playgroud)

css php caching browser-cache

1
推荐指数
1
解决办法
333
查看次数

网页不会在生产中刷新,直到硬刷新

对于我的网站,我有一个 Flask 服务器,为 webpack 生成的文件提供服务。不幸的是,当我更新文件时,由于浏览器缓存,网页通常在硬刷新(Ctrl-F5)之前不会更新。我希望网页在定期刷新后更新,因为大多数用户不知道硬刷新。在开发中,有一些方法可以绕过硬刷新,例如 webpack-dev-server。在生产中执行此操作的最简单方法是什么?

我有以下webpack.config.js文件:

var webpack = require('webpack');
var path = require('path');

module.exports = {
    entry: ['react-hot-loader/patch', './js/main.js'],
    output: {
        filename: "./static/bundle.js",
    },
    resolveLoader: {
    moduleExtensions: ['-loader']
    },
    module: {
        loaders: [
            {
                test: /\.jsx?$/,
                exclude: /(node_modules|bower_components)/,
                loaders: 'babel',
                query: {
                    presets: ['react', 'es2015', 'stage-0']
                }
            },
            {
                test: /\.css$/,
                loader: 'style-loader',
            },
            {
                test: /\.css$/,
                loader: 'css-loader',
                query: {
                    modules: true,
                    localIdentName: '[name]__[local]___[hash:base64:5]'
                }
            }
        ]
    }
};
Run Code Online (Sandbox Code Playgroud)

Flask 服务器正在提供如下所示的index.html文件:

<html>
<body> …
Run Code Online (Sandbox Code Playgroud)

javascript python browser-cache webpack

1
推荐指数
1
解决办法
1088
查看次数

在Spring Boot中设置响应头

如何在使用Spring Boot创建的应用程序中为每个调用设置响应头?我想尝试使用过滤器来拦截所有调用,并能够设置响应头.我按照指南禁用浏览器缓存HTML5,但只设置请求标头,而不是总是.

no-cache filter browser-cache response-headers spring-boot

1
推荐指数
1
解决办法
6117
查看次数