[发明专利]避免键值冲突的方法及装置在审
申请号: | 201910799916.0 | 申请日: | 2019-08-27 |
公开(公告)号: | CN110554859A | 公开(公告)日: | 2019-12-10 |
发明(设计)人: | 陈安阳;吴峰;郭伟 | 申请(专利权)人: | 上海易点时空网络有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F16/951;G06F16/958 |
代理公司: | 11541 北京卓唐知识产权代理有限公司 | 代理人: | 唐海力 |
地址: | 200125 上海市浦东*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 封装 构造函数 命名空间 申请 存储 存储应用程序 域名空间 类设置 项目键 浏览器 冲突 覆盖 | ||
本申请公开了一种避免键值冲突的方法及装置。该申请的方法包括为同一域名下的每个项目新建一个封装类,所述封装类用于对本地存储应用程序接口API进行封装;为每个封装类设置对应的构造函数,所述构造函数为用于根据命名空间参数以及基于本地存储API的项目名称的第一键名构造封装后项目在同一域名空间下对应的项目名称的第二键名的函数,不同项目对应不同的命名空间参数,不同的项目名称的键值是不同的。本申请解决浏览器本地存储时,同一域名的多项目键值冲突覆盖的问题。
技术领域
本申请涉及浏览器本地存储技术领域,具体而言,涉及一种避免键值冲突的方法及装置。
背景技术
为了解决cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),出现了基于浏览器本地存储应用程序接口(Application Programming Interface,API),实现将数据批量存储到本地。对于现有的浏览器本地存储API是存储方式是键值对的存储方式,在同域名下一个键值对只能出现一次。但是实际应用中存在浏览器同一个域名下存在多个项目需要共存的情况,这时多个项目会使用同一个键名,而不同的项目对应的键值是不同的,导致同样的键名需要对应不同的键值,所以造成多个项目对应的键值冲突覆盖的情况。
发明内容
本申请的主要目的在于提供一种避免键值冲突的方法及装置,以解决浏览器本地存储时,同一域名的多项目键值冲突覆盖的问题。
为了实现上述目的,根据本申请的第一方面,提供了一种避免键值冲突的方法。
根据本申请的避免键值冲突的方法包括:
为同一域名下的每个项目新建一个封装类,所述封装类用于对本地存储应用程序接口API进行封装;
为每个封装类设置对应的构造函数,所述构造函数为用于根据命名空间参数以及基于本地存储API的项目名称的第一键名构造封装后项目在同一域名空间下对应的项目名称的第二键名的函数,不同项目对应不同的命名空间参数,不同的项目名称的键值是不同的。
进一步的,所述为每个封装类设置对应的构造函数包括:
在类初始化时,在构造函数中传入对应的命名空间参数;
根据第一键名与其对应的命名空间参数拼接得到项目名称对应的第二键名的方式设置构造函数。
进一步的,所述根据根据第一键名与其对应的命名空间参数拼接得到项目名称对应的第二键名的方式设置构造函数,包括:
将与第一键名对应的命名空间参数拼接在第一键名之前得到项目名称对应的第二键名。
进一步的,所述方法还包括:
基于本地存储API,暴露数据操作函数,所述数据操作函数为操作项目数据的操作函数。
进一步的,所述基于将本地存储API,暴露数据操作函数包括:
为每个封装类创建数据存储函数;和/或,
为每个封装类创建数据删除函数;和/或,
为每个封装类创建数据清空函数。
为了实现上述目的,根据本申请的第二方面,提供了一种避免键值冲突的装置。
根据本申请的避免键值冲突的装置包括:
新建单元,用于为同一域名下的每个项目新建一个封装类,所述封装类用于对本地存储应用程序接口API进行封装;
设置单元,用于为每个封装类设置对应的构造函数,所述构造函数为用于根据命名空间参数以及基于本地存储API的项目名称的第一键名构造封装后项目在同一域名空间下对应的项目名称的第二键名的函数,不同项目对应不同的命名空间参数,不同的项目名称的键值是不同的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海易点时空网络有限公司,未经上海易点时空网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910799916.0/2.html,转载请声明来源钻瓜专利网。