缓存html忽略查询字符串

时间:2016-12-06 18:24:53

标签: http service-worker http-caching

在我的网站上,我使用查询字符串参数将信息传递给Javascript,但返回的实际html独立于查询字符串(它只是一个由Javascript动态填充的模板)。

是否有任何简单的方法可以使页面缓存独立于查询字符串参数?我的一个想法是使用服务工作者从请求中删除查询字符串,但我想知道是否有更简单和更清晰的方法。

1 个答案:

答案 0 :(得分:3)

是的,只需缓存非查询参数页面,然后在回复fetch事件时,将其他选项传递给cache.match(request, options)来电:

return cache.match(event.request, {ignoreSearch: true})
    .then(function (response) {
        // resolves with the match regardless of query string
    });

请参阅MDN docs for Cache.match parameters