h5页面保存在mysql如何分享_h5缓存之数据库

1.需求背景:当用户在页面上添加一行一行的数据时,突然发现网络断掉了,页面上编辑的数据没法保存进数据库,所以需要一个本地端的临时保存功能,以便在网络通畅后重新加载出来!

2.解决方案:

结合网上搜刮,考虑到了这几种方式:1)采用cookie; 2)看能不能采用浏览器的页面缓存来模拟 3)使用html5

1)cookie使用(做测试是直接用浏览器打开没有效果,需要放到站点下)

所有浏览器都支持,所以不需要去考虑兼容性的问题;

浏览器对于同一domain最多支持20个左右cookie,每个cookie的长度也有限制,超长部分就会被截掉

过期的限制:在cookie的生命周期内有效,过期就会被清掉

还有就是每次对服务器的请求cookie都会附带上去增加了网络带宽

鉴于以上几点考虑,并且项目中希望以文件形式存储,不予考虑!

cookie存储操作示例:

2).localStorage

html5本地存储分为两种,一是key-value对的形式存储,一种是DateBase存储;

1.key-value本地存储有sessionStorage和localStorage两种

sessionStorage:会话存储,生命期从进入网站开始,从关闭网站后结束

localStorage:本地存储,即使关闭浏览器,再次打开时同样能够读取到存储的数据,这也是其与sessionStorage的区别

示例:

2.html5本地数据库,提供了一套API来操作

浏览器支持情况

9c6528d913a84016d7980c8813dde938.png

3)h5File API

对于页面数据的保存,采用js库将数据json化,如:JSON.stringify(),IE的数据保存网上搜到是调用浏览器'另存为'的功能来保存成 txt,而对于chrome的数据保存调用html5的API接口blob封装数据提供给a标签的href,文件名提供给download

对于本地文件的读取,采用html5 fileAPI:FileReader,通过readAsText方法读取到本地json串,JSON.parser()转回去.

da973cf3ef2a9b3a7e5ca06022472ad9.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值