【问题标题】:enable cache for jQuery.i18n.properties为 jQuery.i18n.properties 启用缓存
【发布时间】:2018-08-13 15:32:38
【问题描述】:

我正在尝试启用缓存以避免在每次需要时重新加载 Messages.properties 文件。

jQuery.i18n.properties({
    name: 'Messages',
    path: '../capability/',
    mode: 'both',
    language: 'en',
    async: true,
    cache: true,
    callback: function(){ document.title = Messages.cap_4; }
    });

当我在 Firefox 中检查时,即使浏览器仍然多次加载同一个文件,我也会缓存一些带有 304 代码的 Messages.properties 文件。

当我在 chrome 中检查时,每次需要时都会调用所有 messages.properties 文件,并且没有一个文件被缓存。 我弄错了吗?或者这是一个已知的错误?

【问题讨论】:

    标签: javascript jquery caching internationalization


    【解决方案1】:

    在您的 Chrome 测试中,所有 Message.properties 文件实际上都是从缓存中读取的(请注意大小列中的“从磁盘缓存”)。 您看到的 200 和 304 响应之间的差异来自“缓存过期时间”。 当客户端发出新请求(例如 GET Message.properties)并且您的缓存尚未过期时,浏览器将尝试从缓存中读取内容而不是请求服务器,这种情况将返回 200 并带有“来自磁盘缓存”评论。 另一种情况,当你的缓存过期时,浏览器向服务器发送GET请求,那么有两种情况:

    • 该文件中没有新的更新,因此服务器返回 304(304 表示服务器中的文件自上次以来未更改,因此浏览器可以继续读取缓存)。
    • 文件有新的变化,然后服务器将返回一个 200 和新的文件内容给客户端。

    【讨论】:

    • 您好,我也有同样的问题。尽管有“缓存”布尔值,但每次我们重新加载页面时都会从服务器下载属性文件(缓存已启用,我看到 200 状态,当我使用 Chrome 模拟慢速网络时,它占用了我大部分的加载时间)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-28
    • 2018-05-05
    • 1970-01-01
    • 1970-01-01
    • 2013-04-11
    • 2012-07-27
    相关资源
    最近更新 更多