|
@@ -1,10 +1,16 @@
|
|
|
+**网络请求中缓存至关重要, 而Net是最好的**
|
|
|
+
|
|
|
+1. 页面秒开
|
|
|
+2. 减少服务器压力
|
|
|
+3. 无网络可用
|
|
|
+
|
|
|
+### Net缓存特点
|
|
|
|
|
|
1. 缓存任何请求方式, POST/GET/PUT/HEAD...
|
|
|
2. 缓存任何数据类型, File/图片/JSON/ProtoBuf/...
|
|
|
3. 限制最大缓存体积, 缓存遵守磁盘LRU缓存算法, 当缓存达到限制时, 将会删除最近最少使用的缓存
|
|
|
4. 高性能DiskLruCache来实现统一缓存
|
|
|
|
|
|
-
|
|
|
## 配置缓存
|
|
|
|
|
|
不配置缓存设置是不会触发缓存的
|
|
@@ -67,10 +73,9 @@ scopeNetLife {
|
|
|
|
|
|
> 如果`response.cacheResponse`不为null的时候即代表response来自于本地缓存, 强制缓存或Http缓存协议都如此
|
|
|
|
|
|
-
|
|
|
## 自定缓存Key
|
|
|
|
|
|
-缓存Key默认是`请求方式+URL`后产生的sha1值, 所以并不会使用请求参数判断(综合考虑都不适用)
|
|
|
+缓存Key默认是`请求方式+URL`后产生的sha1值(仅强制缓存模式有效), 并不会默认使用请求参数判断
|
|
|
|
|
|
如果你要实现区别请求参数的缓存请自定义缓存key, 如下
|
|
|
|
|
@@ -99,7 +104,7 @@ scopeNetLife {
|
|
|
}
|
|
|
```
|
|
|
|
|
|
-## 缓存+网络
|
|
|
+## 预览(缓存+网络)
|
|
|
|
|
|
这里可以用到Net的预览模式(preview)来实现, 其实不仅仅是预览缓存也可以用于回退请求
|
|
|
|