Chrome - HTML 5 本地存储

原创
2012/08/05 16:13
阅读数 6.8K

    现今介绍HTML 5的数据很多,本地存储是一个亮点。我只是做一点额外发现的补充。

    1、chrome本地存储查看

     本地存储可以分为WebStorage(Local Storage & Session Storage)、SQLLite, 使用chrome浏览器的时候,按F12->Resources,就能看到Databases和Local Storage、Session Storage,如果浏览的网站使用了本地存储那么相应的信息也会有。

    有趣的是,oschina在Local Storage那里有一项my.oschina.net,可能调用了,但是没有设置值。

    2、清除本地储存

    本地存储的使用,在多数HTML 5教程里面是都有提到。那么删除本地存储呢??shift+ctrl+del,chrome就会弹出删除缓存的弹窗,勾选“删除 Cookie 以及其他网站数据和插件数据”删除。可是,这只是删除了WebStorage。SQLLite的数据还在!!!! 

    使用drop database没有用??! 没办法,因为SQLite只是一个内嵌的数据库,你的数据库其实包含在一个文件里面,如果你硬要删除这个数据库就只能删除文件。

    3、删除SQLLite

    先找到SQLLite存储的地方:

Windows Vista or 7: \Users\_username_\AppData\Local\Google\Chrome\User Data\Default\databases
Windows XP: \Documents and Settings\_username_\Local Settings\Application Data\Google\Chrome\User Data\Default\databases
Mac OS X: ~/Library/Application Support/Google/Chrome/Default/databases
Linux: ~/.config/google-chrome/Default/databases

    其实跟databases的同级目录,也可以看到LocalStorage和SessionStorage的文件夹。只要删除里面的文件就可以删除SQLLite,也就是“drop database”。(只有关掉所有chrome的网页才能删除Databases.db,Databases.db-journal,或者禁止掉Chrome的SQLLite扩展,但是只是单纯的删除file就已经可以drop database了)


    4、本地储存的“域”

    本地存储的“域”,好吧,我不知道有没有这个概念。但是,有这个概念,我想可以让很多人放心。HTML 5的本地存储,无论是WebStorage或者是SQLLite,都会有个域,也就是你的域名IP。所以你开发的网站如果使用LocalStorage.setItem("xxx", "dddd"),假如其他网站也用了“xxx”这个key(或者你在SQLLite里面建了一个数据库叫MyData,其他的网站也建了这一个数据库)。用户在访问其他网站的时候,如果其他的网站要清理或者覆盖“xxx”这个key的时候,是覆盖不了的。所以,你可以尽可放心的肆无忌惮的setItem,因为其他网站访问不到你给用户设置的本地存储。(正常无恶意的情况下)

展开阅读全文
打赏
0
9 收藏
分享
加载中
更多评论
打赏
0 评论
9 收藏
0
分享
返回顶部
顶部