场景:
<前端问题, 网站基于AngularJS>
网站里需要展示一个用户的照片
服务器限定 用户只能在刚登陆的一分钟之内访问这张图片
我需要多次访问这张图片(用户登录一分钟之后)
初步想法:
我想缓存起来这张图片,用于后续访问
问题:
怎么实现这种缓存图片并展示?
谢谢
<前端问题, 网站基于AngularJS>
网站里需要展示一个用户的照片
服务器限定 用户只能在刚登陆的一分钟之内访问这张图片
我需要多次访问这张图片(用户登录一分钟之后)
我想缓存起来这张图片,用于后续访问
怎么实现这种缓存图片并展示?
谢谢
如果 IE8+ 的话,建议在返回数据之后的回调函数里取到图片链接或者文件存到 Window.localStorage,最大限制是 5M
如果兼容低版本 IE,可以选择 cookie,最大为 4k,所以只能存一个图片的 url
如果有 redux , Flux 相关经验的话可以采用前端持久化数据方式
存取用法和文档可以自行百度,谷歌
图片访问一次后就一直留在浏览器缓存中了,下次只要使用上次的url,并不会再去服务器请求!这个前提是浏览器窗口一直在打开状态,并且页面不跳转!
如果页面跳转了,那就图片转换为base64;存localstorage中;还可以使用manifest
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答5.2k 阅读✓ 已解决
1 回答3.5k 阅读✓ 已解决
3 回答2.5k 阅读✓ 已解决
可以把图片转换为base64;
再用HTML5的本地存储API进行保存,需要使用了就读取。
html5-localstorage本地存储实际应用举例
本地存储localStorage中保存图片和文件