部分HTML缓存

时间:2015-10-13 07:13:36

标签: html json caching

我有javascript代码,它调用服务器来获取json,然后生成HTML并将其附加到body标签:

$.ajax({
     url: '/myController/myJsonMethod',
     type: 'POST',
     data: JSON.stringify(requestData),
     dataType: 'json',
     contentType: 'application/json; charset=utf-8',
     error: function (xhr) {
        alert('Error: ' + xhr.statusText);
     },
     success: function (result) {
        var myHTML='<div>'+result.text+'</div>'+.....
        $( "body" ).append(myHTML);
     },
     async: true,
     processData: false
  });

此代码主要是静态的。 json结果的值在一年内改变了几次。有没有办法缓存页面的这个html部分?

1 个答案:

答案 0 :(得分:0)

缓存生成的HTML几乎没有意义,因为它很简单。 有意义的是缓存实际的ajax请求,这是一个普通的http请求。

为此,正常点适用于请求结果的控制缓存。实际上,默认行为是这样的结果 被缓存,除非你采取了特殊的预防措施来防止这种情况。看一下您首先发送的http标头。

然而,这种策略存在一个问题:即使请求结果很少发生变化,仍然需要考虑在这种情况下实际发生的情况:如果您缓存请求,那么客户端无法看到更改,直到缓存已过时。