前端巧用localStorage做“缓存”,减少HTTP请求次数
Posted 黑默
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了前端巧用localStorage做“缓存”,减少HTTP请求次数相关的知识,希望对你有一定的参考价值。
场景:
载入某个页面,JS需要通过ajax请求获取某些数据
那么每次刷新页面都会有请求,如果这些数据对实时性要求并不高,显然这样做并不可取。
如何减少服务端的压力,使用localStorage可以解决此问题。
//假设id是区分于其他的要储存的k值的一部分。
var flag=0,k=null,v_arr=[],v_time=0,v=‘‘;
var cday = new Date().getDate();
var k = window.localStorage.getItem(‘name_‘+id);
if(k !== null) {
v_arr = k.split("@");
v_time = v_arr[1];
//一天过期
if(cday != v_time) {
flag = 1;
} else {
flag = 2;
v = v_arr[0];
//取到v的值,直接做该做的事情。
}
}
if(flag < 2) {
//发起请求
$.ajax(
xx,
xxx,
success:function(data) {
//存储data有效值。
window.localStorage.setItem(‘name_‘+id,data.id+‘@‘+new Date().getDate());
//取到v的值,直接做该做的事情。
});
}
以上是关于前端巧用localStorage做“缓存”,减少HTTP请求次数的主要内容,如果未能解决你的问题,请参考以下文章
将jquery和公共样式缓存到localStorage,可以减少Http请求,从而优化页面加载时间