‘壹’ uniapph5pdf预览插件有缓存怎么办
用浏览器缓存、服务端缓存、CDN。? 将uniapph5pdf预览插件缓存通过磁盘/内存等缓存方式,提高资源响应方式,减少服务器压力/资源开销的一门缓存技术。大致可以分为浏览器缓存、服务端缓存、CDN等。
1、浏览器缓存浏览器缓存。也称为客户端缓存,常用方式如下html文件添加Expires时间。
2、服务端缓存服务端缓存。可以分为内存缓存、磁盘缓存两种。
3、CDN缓存。CDN是静态缓存加速最典型的代表。CDN技术并不是一门新的技术,它是基于传统 nginx、squid、varnish 等 web 缓存技术,结合 DNS 智能解析的静态缓存加速技术。节点缓存对需要加速的网站应用,相应的静态资源通过内存缓存+磁盘缓存的方式缓存在服务器端。精准调度对访问的用户 ip 进行智能解析调度,实现就近缓存节点访问。
‘贰’ uniapp获取app占用空间
uniapp 获取APP权限,是需要缓存app数据的,所以你觉得占空间可以定期清理缓存数据或卸载app软件。
‘叁’ uni-app数据缓存
首先uni-app提供的数据缓存Storage分四种模式:
一种是set(用于存储数据)、一种是get(用于获取数据)、一种是remove
(用于移除指定数据)、最后一种是clear(清除缓存数据)
然后区分:带Sync字段是同步的,没有带的是异步。
查看缓存数据的界面面板:
谷歌浏览器--开发者工具--Application--Storage--Local Storage
上面这个面板就是进行查看数据缓存相关信息的。
下面进行异步数据缓存展示,就是没带Sync字段的,顺序:先有set模式-->get模式-->remove模式-->clear模式(一般很少用)
首先准备三个按钮,分别对应上面的三个功能: 存储数据、获取数据、移除数据
方法定义:
功能实现:
(1)存储数据
uni.setStorage(OBJECT)
这个对象里面传入一个key和一个data,你可以理解为键值对的形式,然后一个回调函数success
当我们点击“存储数据”的这个按钮时,我们来到面板就会看到数据已经缓存成功呈现在面板上。而key为键,data为值。
(2)获取数据
uni.getStorage() 用于获取缓存的数据
这里的key对应setStorage的key,然后再success回调函数里面接受res返回数据的结果,控制台输出。
(3)移除数据
一般用于移除整个数据。
回到数据缓存的面板查看,发现key为"student"的字段已经完整移除。
带Sync的,不需要指定特定的键(key)和值(data)。
以setStorageSync(key,value)为例子,同步可以直接接受参数,第一个参时就是key键,第二个参数为value值。
将上面的例子改成同步,效果是一样的。
数据缓存:
获取数据:
‘肆’ uni-app或微信小程序从缓存storage获取token第一次为空,刷新才能拿到问题。
请求框架config配置
config.js
未登录前token取到是空,登录后把后台返回的token存储到缓存,到下一个界面请求其他接口的时候,头信息里面的token为空,并且本地缓存信息已有token,于是想到是请求头里面的token并没有更新,需要去更新一下就可以了。
interface.js
index.js
‘伍’ 如何解决h5、vue、uniapp等项目缓存问题
我们再开发web项目时,经常会遇到修改了css、js、html等静态文件,并部署到服务器之后。使用浏览器进行访问的时候,发现并没有什么变化,这就是静态缓存。我们应该如何处理静态缓存呢?首先我们先了解什么是静态缓存。
html文件添加Expires时间
CDN是静态缓存加速最典型的代表。CDN技术并不是一门新的技术,它是基于传统 nginx、squid、varnish 等 web 缓存技术,结合 DNS 智能解析的静态缓存加速技术。
方式二:
uniapp解决缓存的方式与vue一样,但是uniapp兼容了很多平台,所以修改vue.config.js又不太一样。如果uniapp根目录下面没有vue.config.js,则新建vue.config.js文件即可。