发布者:上海IT外包来源:http://www.lanmon.net点击数:1717
蓝盟IT小贴士,来喽!
一、缓存的设计方法
在计算中,缓存是存储数据子集的缓存层次,通常是临时存储,因此在以后再次请求数据时,它会比访问数据的主要存储位置更快。 缓存可以有效地重用以前检索或计算的数据。 了解缓存的作用后,设计缓存的API。
get(key ) :从缓存中获取与指定的key相对应的值。
delete(key ) :从缓存中删除与指定key相对应的值
clear () :清空缓存的数据。
set(key、value、maxAge ) :保存密钥值对,并支持缓存的最大时间(maxAge单位为毫秒)。
事实上,除了自定义缓存对象之外,您还可以使用成熟的第三方库,如lru-cache。
LRU缓存处置算法是一种常用的策略。 LRU的全名是“最近使用”。 换言之,我们认为最近使用的数据应该“有用”。 长时间没有使用的数据应该是徒劳的。 内存满后,优先删除长时间不使用的数据。
二、如何加强默认适配器
Axios引入了适配器,使其既支持浏览器,也支持Node.js环境。 在浏览器环境中,通过封装XMLHttpRequest API发送HTTP请求,在Node.js环境中,通过封装内置于Node.js中的HTTP模块和HTTPs模块发送HTTP请求。
2.2cacheadapterenhancer函数的定义
为了使用户能够更灵活地控制数据缓存的功能,我们定义了cacheAdapterEnhancer函数。 这个函数支持两个参数
适配器:增强的Axios适配器对象
options缓存配置对象,支持三个属性,用于配置不同的功能:
maxAge :全局设置缓存的最大时间
enabledByDefault :是否启用缓存,默认值为true;
文/上海蓝盟 IT外包专家
cacheFlag :构成请求config对象上的缓存属性的缓存标志
defaultCache :设置要使用的缓存对象。
现在,我们已经介绍了扩展xhr适配器以实现Axios缓存请求数据的功能。 因为完整的示例代码内容很多,所以小宝不放具体的代码。 感兴趣的合作伙伴可以访问以下地址以查看示例代码:
分享到: