在前两天的开发时,遇到一个问题,需要将一个网页在预加载时,优先出一个弹出框,但是再次加载时不希望它出现,在经过一段时间的搜索和尝试之后,发现了大多使用的两种方式:生成cookie和webStorage,简单来说就是创建网站缓存,记忆下曾经显示过,在之前的网站开发中,用到最多的就是cookie,但是这一次,在只考虑前端的情况下,我不知道如何下手了,一时之间忘记了动态生成cookie的操作,于是发现了一个更加好用的方式webStorage,webstorage分为两种方式,一种是localStorage,另一种是sessionStorage

  webStorage的两种方式存在区别,localStorage是一种永久存在的网站缓存,这意味着如果使用这一种方式进行网站的设计,那么永久的存储需要手动的删除localStorage信息;sessionStorage类似于临时的网站缓存,仅对当前任务窗口起作用,关闭窗口或者关闭浏览器都会自动清除

  $(document).ready(function () {
//弹框的显示(session方式)
if(!window.sessionStorage.getItem("storage")){
$('#auth').modal('show')
window.sessionStorage.setItem("storage",'true')
}
//弹框显示(local方式)
if(!window.localStorage.getItem("storage")){
$('#auth').modal('show')
window.localStorage.setItem("storage",'true')
}
})

由于wbStorage不能设置过期时间,更多情况下是需要设置过期的,webStorage不建议使用,但如果仅仅是一个提示作用的弹出框等无关紧要的可以使用,从而实现降低服务器压力的作用,其次是cookie的使用,cookie可以实现与服务器的交互通信:每次携带在HTTP的headers中,但不可以保存过多的cookie,一般情况下,网站的一个站点最多保存20个cookie,每一个不能超过4kb

cookie的优缺点:

优点:具有极高的扩展性和可用性

  1、通过良好的编程,控制保存在cookie中的session对象的大小;

  2、通过加密和安全传输技术,减少cookie被破解的可能性;

  3、尽量在cookie中存放不敏感的数据,即使被盗取也不会很大损失;

  4、控制cookie的生命周期,即设置过期时间

缺点:

  1、cookie的长度和数量的限制,每个站点只能最多20个cookie,每一个不能超过4kb,否则会被截掉

  2、安全性,如果cookie被人拦掉了,那个人就可能会获取到所有session的信息,加密也不起作用

  3、实现的能力有限,因为cookie是存在客户端,有些需要服务端做的事情,如果使用cookie,无法进行正常实现

cookie,webstorage的理解的更多相关文章

  1. cookie导读,理解什么是cookie

    一.cookie导读,理解什么是cookie    1.什么是cookie:cookie是一种能够让网站服务器把少量数据(4kb左右)存储到客户端的硬盘或内存.并且读可以取出来的一种技术.    2. ...

  2. 对session和cookie的一些理解

    由于项目需要,最近用session容器比较多,传载的同时加上了自己的一些理解,不足之处还请大家补充和纠正.);                  response.addCookie(c1);   * ...

  3. cookie&&session再理解笔记

    就拿php来说,两个php页面之间不拿get,post传递变量的话,数据是不能共享的.访问完1.php页面该页面的变量就被销毁了.所以就拿学校食堂来说,拿现金买饭的话你交完钱后,他给你个票以便确认你, ...

  4. cookie mapping 原理理解

    深入浅出理解 COOKIE MAPPING Cookie mapping技术 利用javascript跨域访问cookie之广告推广

  5. 关于bottle WEB框架中签名cookie的一点理解

    首先要理解一个概念 MAC (message authenticate code) 消息认证码(带密钥的Hash函数):密码学中,通信实体双方使用的一种验证机制,保证消息数据完整性的一种工具. 构造方 ...

  6. 对Django框架中Cookie的简单理解

    概念的理解:首先Cookie和Session一样,是django中用于视图保持状态的方案之一.为什么要进行视图保留呢,这是因为浏览器在向服务器发出请求时,服务器不会像人一样,有记忆,服务器像鱼一样,在 ...

  7. session和cookie的简单理解

    0. 引子,我们为什么要cookie和session       因为http请求是无状态的(不能记录用户的登录状态等),所以需要某种机制来保存用户的登录状态等信息,在下次访问web服务的时候,不用再 ...

  8. Cookie实例,理解cookie

    一.一句话了解cookie是什么 cookie是服务端发送给客户端的.用来记录一些信息(如用户名),定制主页,聚焦广告的.最终以文件形式存在于客户端电脑磁盘下的小型文档. 二.用实例来认清cookie ...

  9. cookie路径概念理解

    .创建一个cookie并设置 cookie的有效路径: $.cookie('the_cookie', 'the_value', { expires: 7, path: '/' }); 注:在默认情况下 ...

随机推荐

  1. Pikachu-File Inclusion, Unsafe file download & Unsafe file upload

    Pikachu-File Inclusion, Unsafe file download & Unsafe file upload 文件包含漏洞 File Inclusion(文件包含漏洞)概 ...

  2. hadoop集群搭建教程

    1. 相关软件准备: VMware-workstation-full-15.0.4-12990004.exe CentOS-7-x86_64-DVD-1810.iso jdk-8u231-linux- ...

  3. 信通院发布《云计算发展白皮书 (2019年) 》 (附PPT解读)

    来源: 中国信息通信研究院CAICT 为了进一步促进云计算创新发展,建立云计算信任体系,规范云计算行业,促进市场发展,提升产业技术和服务水平.由中国信息通信研究院(以下简称“中国信通院”)主办,中国通 ...

  4. canves做的时钟目前已经开源

    canves做的时钟目前已经开源 git地址: https://github.com/jidanji/canves-clock/tree/1.0.1 项目截图 时流过的时间变得有颜色,其他的没有颜色.

  5. 网络爬虫引发的问题及robots协议

    一.网络爬虫的尺寸 1.以爬取网页,玩转网页为目的进行小规模,数据量小对爬取速度不敏感的可以使用request库实现功能(占90%) 2.以爬取网站或爬取系列网站为目的,比如说获取一个或多个旅游网站的 ...

  6. .NET Core 轻量级模板引擎 Mustachio

    一. 前言 Mustachio 是一款轻量级且强大的模板引擎,可以用在网页渲染.代码生成器等需要模板引擎的场景.我用它是用在配置文件模板化的场景,在配置文件里面编写一些模板语法,然后从 Cloud 拉 ...

  7. .NET Core 3.0之深入源码理解Host(一)

    写在前面 ASP .NET Core中的通用主机构建器是在v2.1中引入的,应用在启动时构建主机,主机作为一个对象用于封装应用资源以及应用程序启动和生存期管理.其主要功能包括配置初始化(包括加载配置以 ...

  8. 天下代码一大抄,整个案例的搬是什么鬼!疑似冒充蚂蚁金服高级Java开发工程师?你大爷

    写在开始 上班前的第一件事,就是码云看看有什么消息,回复下网友的问题.如果看到喜欢的项目会点进去瞅瞅,然后就开始一天的工作. 然而,这一天的工作并不开心,一个今日热门项目让自己很恼火,一开始感觉并没有 ...

  9. Windows宏病毒利用

    背景: 最近忙的飞起,各种事情,不想吐槽,因为某些事情,还吃了口屎,啧啧啧..... 常见的钓鱼,社工基本技术都是这种,什么鱼叉,水坑,社工,投毒之类的,APT 攻击惯用伎俩. 那么今天主要利用Win ...

  10. 4、netty第三个例子,建立一个tcp的聊天的程序

    代码基于第二个例子,支持多客户端的连接,在线聊天. 主要思路: 连接建立时,在服务器端,保存channel 对象,当有新的客户端加入时,遍历保存的channel集合,向其他客户端发送加入消息. 当一个 ...