ohos.net.http里的 usingCache: true是不是无效啊

什么情况才有效,设置true后,关掉网络也获取不到缓存数据。

HarmonyOS
2024-08-22 21:16:05
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

调用网络请求能力如需要使用缓存可开启usingCache字段 并在header中携带Cache-Control参数设置缓存周期实现Cache-Control

针对浏览器和服务器时间不同步 ,加入了新的缓存方案 ,这次服务器不是直接告诉浏览器过期时间 ,而是告诉一个相对时间Cache-Control=10秒 ,意思是10秒内直接使用浏览器缓存。

app.get('/demo.js',(req, res)=>{ 
  let jsPath = path.resolve(__dirname,'./static/js/demo.js'); 
  let cont = fs.readFileSync(jsPath); 
  res.setHeader('Cache-Control', 'public,max-age=120') //2分钟 
  res.end(cont) 
})

Cache-Control 是需要在服务器设置,如果没有设置Cache-Control 就不会使用缓存,而在app需要的 Cache-Control :true 是默认开启的, 所以这里保护需要自己操作。只有当服务器设置了Cache-Control 当网络错误并在缓存时效内, 才会返回缓存数据。

分享
微博
QQ
微信
回复
2024-08-23 17:53:07
相关问题
HarmonyOS @ohos.net.httpusingCache 缓存
46浏览 • 1回复 待解决
hdc smode 无效怎么回事
1138浏览 • 1回复 待解决
HarmonyOS 人脸SDK是不是有替代
427浏览 • 1回复 待解决
HarmonyOS @State 是不是不能修饰枚举
60浏览 • 1回复 待解决
ohos.net.socket (Socket连接)链接不上
5633浏览 • 1回复 待解决
是不是开发HarmonyOS应用ide
12445浏览 • 1回复 待解决