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 人脸SDK是不是有替代
274浏览 • 1回复 待解决
hdc smode 无效怎么回事
973浏览 • 1回复 待解决
鸿蒙怎么获取当前是不是深色模式
8324浏览 • 1回复 待解决
如何判断当前设备是不是折叠屏?
395浏览 • 1回复 待解决
判断某一年是不是闰年
275浏览 • 1回复 待解决
如何判断字符串是不是字母?
246浏览 • 1回复 待解决
是不是开发HarmonyOS应用ide
12025浏览 • 1回复 待解决
windows下HDC是不是有专门驱动程序?
2542浏览 • 0回复 待解决
ohos.net.socket (Socket连接)链接不上
5351浏览 • 1回复 待解决
为何dockersu到mysql居然无效
2594浏览 • 1回复 待解决
判断一个参数是不是Resource类型
297浏览 • 1回复 待解决