Cookie入门

一、Cookie概览

Document对象含有一个Cookie属性:document.cookies

可以利用Cookie对象在用户的硬盘上持久的存储数据,
并且能够获取以这种方式存储的数据。

1、cookie的存储

Cookie的必要的部分:名字、值
name=value的形式
document.cookie = 'username=DaShen';
document.cookie = 'color=red';

2、cookie的读取

读取后是一个所有cookie组成的字符串,是一个name/value对的列表,数对间用分号分开。
因此写入cookie时,value值不能有分号、逗号或空白符,等号。
要读取特定的cookie的值,可以用方法String.indexOf(),String.substring()或者String.split()将字符串分割。

console.log(document.cookie);

3、cookie的过期时间

1、默认情况下cookie是暂时存在的,存在浏览器的内存中,当浏览器关闭时,cookie消失,cookie的生存期和浏览器相同
2、非默认情况下:cookie存在于浏览器的缓存目录的一个文件中

(1)方式一:兼容所有浏览器 expires(Date.toGMTString()/toUTCString())

 //设置cookie的生存期
    var now = new Date().getTime();
    var temp = now + 1000 * 60 * 60 * 24 * 7;
    var time = new Date(temp);
    console.log(time.toGMTString());
    document.cookie = 'cart=100;expires=' + time.toGMTString();
(2)方式二:支持现代浏览器(老版本ie无效) max-age(秒)
document.cookie = 'logined=true;max-age=' + 60 * 60 * 24 * 7;

4、cookie的编码和解码

cookie只能处理拉丁字符,因此一般情况下:
在写入之前组要用JavaScript的核心全局函数encodeURIComponent()对写入的值进行编码。
并且读取时使用相应的decodeURIComponent()进行解码

编码:

document.cookie = 'username=' + encodeURIComponent('大神');
解码:
console.log(decodeURIComponent(document.cookie));

二、维护cookie

1、修改cookie

重新设置cookie的值即可

2、删除cookie

针对key设置一个过期时间,value的值可以任意或为空
document.cookie = 'logined=true;max-age=0';
    document.cookie = 'cart=100;expires=' + new Date().toGMTString();

三、cookie的属性

1、属性

key、value、expires(max-age)、path、domain、secure
必要:key、value
可选:expires(max-age)、path、domain、secure

2、cookie的一致性

当domain、path、secure、key有任何一个不一致的时候,cookie就不是同一个cookie
(1)修改path:
默认情况下,位于父路径的文件不能读取子目录的文件中设置的cookie的值。
同一个站点,不同目录下的同名cookie是互相独立的。
如果要在不同级别的路径下共享cookie,需要制定相同的path值
document.cookie = 'logined=true;max-age=0';
    document.cookie = 'cart=100;expires=' + new Date().toGMTString();

(2)domain
只能从子域名改到父域名,其他修改不可以
如位于server1.example.com 和 server2.example.com的网页需要共享cookie
则设置他们的domain值都为example.com。

例如:如果当前代码在xxx.jd.com下执行,那么可以执行如下的修改
document.cookie = 'color=blue;path=/;domian=jd.com';

(3)secure
Secure=true
指定在网络上如何传输cookie
默认是不安全的cookie,可以通过普通的http协议传输。
如果设置为secure,则只能通过https或其他的安全协议传输。

四、局限性和安全性

1、cookie的局限性

  • 理论值限制在4kb
  • 不能存储敏感数据
  • RFC 2965标准规定浏览器最多保存300个cookie(现代浏览器允许cookie总数多于300个)
  • 为每个web服务器保存的cookie数不能超过20个

2、数据持久型和安全性

  • 使用客户端持久性的方式保存在硬盘上的数据时未加密的。
  • 任何形式的客户端持久性都不应该用于任何一种敏感信息。
  • 数据持久性是用于扩展用户体验的,并不是用于数据收集的。






内容概要:本文详细介绍了扫描单分子定位显微镜(scanSMLM)技术及其在三维超分辨体积成像中的应用。scanSMLM通过电调透镜(ETL)实现快速轴向扫描,结合4f检测系统将不同焦平面的荧光信号聚焦到固定成像面,从而实现快速、大视场的三维超分辨成像。文章不仅涵盖了系统硬件的设计与实现,还提供了详细的软件代码实现,包括ETL控制、3D样本模拟、体积扫描、单分子定位、3D重建和分子聚类分析等功能。此外,文章还比较了循环扫描与常规扫描模式,展示了前者在光漂白效应上的优势,并通过荧光珠校准、肌动蛋白丝、线粒体网络和流感A病毒血凝素(HA)蛋白聚类的三维成像实验,验证了系统的性能和应用潜力。最后,文章深入探讨了HA蛋白聚类与病毒感染的关系,模拟了24小时内HA聚类的动态变化,提供了从分子到细胞尺度的多尺度分析能力。 适合人群:具备生物学、物理学或工程学背景,对超分辨显微成像技术感兴趣的科研人员,尤其是从事细胞生物学、病毒学或光学成像研究的科学家和技术人员。 使用场景及目标:①理解和掌握scanSMLM技术的工作原理及其在三维超分辨成像中的应用;②学习如何通过Python代码实现完整的scanSMLM系统,包括硬件控制、图像采集、3D重建和数据分析;③应用于单分子水平研究细胞内结构和动态过程,如病毒入侵机制、蛋白质聚类等。 其他说明:本文提供的代码不仅实现了scanSMLM系统的完整工作流程,还涵盖了多种超分辨成像技术的模拟和比较,如STED、GSDIM等。此外,文章还强调了系统在硬件改动小、成像速度快等方面的优势,为研究人员提供了从理论到实践的全面指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值