针对 极客时间 SQL 必知必会 课程进行总结 什么是 WebSQL 我想你一定知道 Local Storage 与 Session Storag,这些都是 H5 新增的属性,用于本地存储。...首先要想使用 WebSQL 首先得判断浏览器是否支持 if(!...window.openDatabase) { alert('您的浏览器不支持 WebSQL'); } 如果浏览器不支持、直接弹出提示框,否则页面不会发生任何变化 打开数据库...device-width, initial-scale=1.0"> WebSQL...window.openDatabase) { alert('您的浏览器不支持 WebSQL'); } var db = openDatabase
Cookies 是最早的本地存储,是浏览器提供的功能,并且对服务器和 JS 开放,这意味着我们可以通过服务器端和客户端保存 Cookies。...WebSQL 与 IndexedDB WebSQL 与 IndexedDB 都是最新的 HTML5 本地缓存技术,相比于 Local Storage 和 Session Storage 来说,存储功能更强大...WebSQL 更准确的说是 WebSQL DB API,它是一种操作本地数据库的网页 API 接口,通过 API 可以完成客户端数据库的操作。...当我们使用 WebSQL 的时候,可以方便地用 SQL 来对数据进行增删改查。...如果说 WebSQL 方便我们对 RDBMS 进行操作,那么 IndexedDB 则是一种 NoSQL 方式。
在IndexedDB之前,还有个WebSQL 数据库,但是W3C组织在2010年11月18日废弃了webSql。尽管两者都是存储的解决方案,但是他们提供的不是同样的功能。...IndexedDB 和WebSQL的不同点在于WebSQL 是关系型数据库访问系统,IndexedDB 是索引表系统(key-value型)。...阮一峰老师写的IndexedDB 操作教程都是基于原生IndexedDB API进行操作的,有时候是比较繁琐的,那有没有一些成熟的封装好的js库供我们使用呢?...localForage在不支持IndexedDB或WebSQL的浏览器中会自动使用localStorage。...Dexie.js是indexedDB的封装库。
那么开始动手,新建一个myStorage.js文件,把上面的cookieStorage代码Copy进去,然后再开始写以下代码: ( myStorage.js ) //本地存储,localStorage类没有存储空间的限制...想省事的童鞋,可以直接点击下载myStorage.js....因为世面上只有主流的浏览器实现了WebSQL功能,很多非主流并不兼容WebSQL,并且,所谓的主流只是编程开发人员眼中的主流,如果是用户平时自己使用的那些乱七八糟的浏览器,WebSQL简直是灾难啊!!!...还有一个WebSQL不能够广泛使用的原因是,大量前端工程师不懂数据库也没有上进心或好奇心或空闲时间去研究和学会应用WebSQL,导致了开发人员逃避WebSQL和用户对WebSQL没有使用习惯和各类客户端对...WebSQL兼容性参差不齐等现象,是WebSQL不能够像服务器端的数据库那么广泛应用的主要原因。
corresponding database initialization and table read is done by code below in file AppStatusService.js...In order to achieve the simulation that each step of webSQL is a time-consuming operation, I wrap the...Note Not all browsers support WebSQL and the specification of WebSQL is no longer in active maintenance...See the comparison on these two techniques from this link Migrating your WebSQL DB to IndexedDB.
作用域不能大于sw.js的根目录。...2.2.4 WebSQL 在说WebSQL之前,需要强调一点,和H5离线缓存(manifest)一样,WebSQL已经不推荐使用了,推荐使用IndexedDB来作为前端数据库存储,W3C已经做废弃处理了...下面简要对WebSQL的概念和相关用法做一些描述: 1)概念 WebSQL同IndexedDB类似,都属于前端数据库存储的一种,和IndexedDB不同的是,WebSQL是关系型数据库,所有的关于库,表的操作都通过...2)关键API 和indexedDB不同的是,WebSQL大部分调用都通过传SQL语句进行的,所以WebSQL的关键API非常少,只有3个: API 说明 openDatabase window的全局方法...6)使用环境 由于WebSQL也属于前端数据库型的缓存机制,而且属于关系型数据库。建议有关系型数据的存储需求的应用使用,而且WebSQL不能存储二进制的数据,需要注意。
打开浏览器调试模式,在 Application 右侧就会有浏览器的 8 种缓存方式,具体如下: 2、websql websql是较新的chrome浏览器支持,并以独立规范形式出现,引入了一组使用 SQL...websql主要特点: Web Sql数据库 API 不是HTML5的一部分,在H5之前就已经存在了。 将数据以数据库的形式存储在客户端,按需读取。 数据便于检索,允许使用sql语句。...可以直接存储任何类型的数据,如 js任何类型的数据 、blob流。 可以创建索引,提供高性能搜索功能。 采用事务,保证数据的准确性和一致性。 4、cookie cookie指的就是会话跟踪技术。...(key) // 删除单个数据 sessionStorage.clear() // 删除全部 7、application cache application cache是离线缓存技术,将大部分的图片、js...9、flash缓存 flash缓存也是页面通过js调用flash读写特定的磁盘目录,达到本地数据缓存的目的。这是要基于flash的,所以基本不用。
大家看我第16行的_createDatabaseOK的函数延时1秒执行,仅仅是为了演示WebSQL API 异步调用的最佳实践。
现在的痛点 1、用户反馈问题后,有时候虽然我们查询了js报错日志和cgi调用,但是没有发现任何错误,我们根本不知道用户的终端上到底发生了什么。...2、目前使用的js错误上报系统,看到上报有一定的延时,作为一款金融产品,分秒必争,这短暂的延时可能是致命的,我们必须快速的找到原因并予以修复。...目前H5也支持若干种本地存储方案,cookie, localStorage, indexedDB和websql等,其他的由插件提供的能力不在考虑的范围之类,如flash,移动端的可用性会是一个很大的问题...websql websql作为一项W3C标准,目前已经被废弃,但是各大桌面浏览器和移动端浏览器都有很好的实现这个接口,兼容性问题不大,底层基本上都是sqlite(正是因为这样,作为一个web标准是不可接受的...因此我们觉得websql应当作为当前阶段主要的解决方案。
模块内存储引擎的默认选择顺序是 SQLite,IndexedDB,WebSQL 和 LocalStorage。...IonicStorageModule.forRoot({ name: '__mydb', driverOrder: ['indexeddb', 'sqlite', 'websql...) 方法进行初始化操作: IonicStorageModule.forRoot({ name: '__mydb', driverOrder: ['indexeddb', 'sqlite', 'websql...} }); } // https://github.com/localForage/localForage/blob/master/src/localforage.js const DefaultDrivers...= { INDEXEDDB: idbDriver, WEBSQL: websqlDriver, LOCALSTORAGE: localstorageDriver }; Storage
HTML5缓存 我们在访问网站的时候,会从网站服务器中下载很多数据,其中包括css文件、图片文件、js文件、音频文件等等,有时候一个页面这种零零散散的文件就要下载上百个,可以打开浏览器的开发者工具,点击...因此我们需要将一些不怎么发生变动的静态文件例如图片、css、js文件等等,保存到本地上,下一次再访问网站的时候就可以从本地上直接读取这些文件,不用再去服务器下载一遍了,所以浏览器就有了本地缓存的机制。...WebSQL 首先要说明一下,Web SQL 数据库 API 并不是 HTML5 规范的一部分,但是它是一个独立的规范,引入了一组使用 SQL 操作客户端数据库的 API。...以上插入数据没有使用主键,因为在websql没有主键,只能使用唯一索引来充当主键,示例: ? 运行结果: ?.../hello.js css/a.css 上面的 manifest 文件列出了两个资源:一个 CSS 文件,一个 JavaScript 文件。
名称 作用 localForage 把 IndexedDB、WebSQL、localStorage 封装成统一接口,如果浏览器不支持 IndexedDB 就退到 WebSQL 或 localStorage...Dexie.js IndexedDB 的扩展库,简单易用。 ZangoDB 类似 MongoDB 的 IndexedDB 接口,支持 MongoDB 的大多数熟悉的过滤、投影、排序、更新和聚合功能。
api/plugins.js import request from "@/utils/request.js"; export page => request("/article/last", "get...F12 Console 通过执行 js createElement 动态创建 script 标签形式,这种方式就能加载js并执行 补充: 动态插入JS可以不阻碍 DOMContentLoad image...-20220209140325367 前端存储 cookie、sessionStorage、localStorage、websql、indexeddb 参考: 前端存储cookie、sessionStorage...、localStorage、websql与indexeddb_奋斗的小猪-CSDN博客 cookie Cookie是不可以跨域名的,隐私安全机制禁止网站非法获取其他网站的Cookie。...websql 与 indexeddb 参考 感谢帮助!
标准HTTP Cookie evercookie会将数据存在 document.cookie 中,获取的时候直接获取就可以了,没什么可说的,这部分数据是比较容易被清除的,比如浏览器清除cookie、js...脚本设置等,分享关于cookie的两个点: http请求自带本域以及根域下所有cookie,CSRF的根源就在这里; js设置cookie默认在当前域以及当前路径下, cookie一般都会跨路径使用,一定注意设置...浏览器关闭重新打开后消失; 5) globalStorage 同localStorage类似,同样是永久存储在本地,目前只有 Firefox48 以上才支持; 6) openDatabase HTML5的WebSQL...数据库,可以理解为本地存储 Local Storage 和 Session Storage 的一个加强,用来操纵大量结构化数据,由于各个浏览器实现原因,WebSQL规范已经被废弃掉了; 7) IndexedDB...浏览器内置的一种数据库,永久保存数据,IndexDB与WebSQL比较,IndexedDB更像是一个NoSQL数据库,而WebSQL更像是关系型数据库,使用SQL查询数据; 8) IndexedDB
定义用于列表需求的局部状态 // store-ds/index.js import VuexDataState from 'vue-data-state' // 设置全局状态和局部状态 export...// control/data-list.js import { watch, reactive } from 'vue' // 状态 import VueDS from 'vue-data-state...' // webSQL import { webSQLVue } from 'nf-web-storage' // 获取配置 // eslint-disable-next-line import/no-absolute-path...default function dataListControl (jsonFlag) { // 显示数据列表的数组 const _dataList = reactive([]) // 访问 webSQL...在线演示用的是webSQL,正式项目可以使用 axios 向后端申请数据。然后获取数据设置给 dataList。 这里需要统计总记录数,而下面的翻页事件里就不需要统计总记录数了。
不支持跨域(同localstorge)可通过设置domain和path实现共享域名分为session cookie(关闭浏览器清空)和持久性cookie(定义有效期)httponly设置为true时,JS...无法获取cookie值常用于身份验证(逐渐被token替代) 可以用用 webSQL 非HTML5规范,是一种特定的浏览器特性集成在浏览器中的本地数据库类似NoSQL数据库 不推荐 indexDB HTML5...规范50M限制浏览器支持情况不佳 还需等等 Application Cache 通过manifest配置文件在本地有选择性的存储JS/CSS/图片等静态资源存储大小:5M静态资源必须和HTML文件同源逐渐被...比如,单页面项目中,每次发布JS和CSS文件都可能发生变化(通过在文件名上加hash来指定变化),那么,必须保证每次请求到的HTML文件必须是最新的。
当运行在Web中或作为PWA应用时,Storage将根据你确定的优先级使用IndexedDB、WebSQL或localstorage。 1...., IonicStorageModule.forRoot({ name: 'myApp', driverOrder: ['sqlite', 'indexeddb', 'websql
领取专属 10元无门槛券
手把手带您无忧上云