首页 > 其他分享 >cookie属性max-age与expires

cookie属性max-age与expires

时间:2023-02-02 14:03:03浏览次数:56  
标签:max age expires maxAge cookie var cookiestr

max-age表示最大生命周期,expires表示过期时间,cookie使用其中任何一个,都可以用来限制cookie的生效时间。

如果同时使用,max-age会生效。

这两者在时间设置上,却有不同单位属性。expires使用的是当前时间的毫秒+过期的毫秒,因此单位以ms计,而max-age直接使用秒为单位。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>cookie</title>
<style>
#root input{padding:10px;border:1px solid #ddd;color:#fff;border-radius: 3px;background: lightgreen;font-size: 16px;}
#root .box{padding:5px;}
#root textarea{width:790px;height:200px;resize: none;}
</style>
</head>
<body>
<div id="root">
<div class="box">
<input type="button" value="expires" onclick="handlecookie(1)"/>
<input type="button" value="max-age" onclick="handlecookie(2)"/>
<input type="button" value="expires max-age" onclick="handlecookie(3)"/>
</div>
<div class="box">
<textarea id="output"></textarea>
</div>
</div>
<script src="https://code.jquery.com/jquery-1.12.4.js" ></script>
<script>
function setCookie(name,value,expires,maxAge){
var now = new Date()
now.setTime(now.getTime()+expires)
var cookiestr = name+"="+value
if(expires)
cookiestr+="; expires="+now.toGMTString()
if(maxAge)
cookiestr+="; max-age="+maxAge
document.cookie = cookiestr;
}

var count = 1;
var timeout;
function getCookie(name){
var cookiestr = document.cookie+"#"+(count++);
var val = $("#output").val()
val += cookiestr+"\n"

if(document.cookie){
$("#output").val(val)
timeout = setTimeout(function(){
getCookie(name)
},1000)
}else{
clearTimeout(timeout)
}

}

function handlecookie(type){
var expires = 5*1000;
var maxAge = 10;
count = 1
clearTimeout(timeout)
if(type==1){
setCookie("age","18",expires)
}else if(type==2){
setCookie("age","18",0,maxAge)
}else{
setCookie("age","18",expires,maxAge)
}
getCookie("age")
}
</script>
</body>
</html>

  

页面上有三个按钮,依次点击,看效果:过期时间设置的是5秒,最大生命周期设置的是10秒,单独设置,各自生效,一起设置max-age生效。

    第一个按钮:

cookie属性max-age与expires_html

   第二个按钮:

cookie属性max-age与expires_html_02

  第三个按钮:

 

cookie属性max-age与expires_时间设置_03

 



标签:max,age,expires,maxAge,cookie,var,cookiestr
From: https://blog.51cto.com/u_2820398/6033536

相关文章

  • css3各种度量单位 px、em、%、rem、vh/vw、vmin/vmax
    一px相对长度单位,浏览器的度量单位,相对于物理像素(显示器屏幕分辨率),1px在高清屏幕下可能占用2个物理像素、甚至3个物理像素,有关物理像素和px之间转换比,可以查看这......
  • Java 基础 - javaagent原理及实践
    JavaAgent是什么?javaagent本质上可以理解为一个jar包插件,这个jar包通过JVMTI(JVMToolInterface)完成加载,最终借助JPLISAgent(JavaProgrammingLanguageInstrumentation......
  • 人工智能自然语言处理—PageRank算法和TextRank算法详解
    人工智能自然语言处理—PageRank算法和TextRank算法详解一、PageRank算法PageRank算法最初被用作互联网页面重要性的计算方法。它由佩奇和布林于1996年提出,并被用于谷歌搜......
  • softmax
    Softmax分成soft和max两个部分。max故名思议就是最大值的意思。Softmax的核心在于soft,而soft 与之相对的是hard。hardmax就是只选出其中一个最大的值max,即非......
  • 阅读论文(一):ImageNet classification with deep convolutional neural networks
    Alexnet卷积神经网络模型重叠池化(overlappingpooling)传统不重叠的池化层,步长s与窗口尺寸z是相同的,s=z。而重叠池化步长s小于窗口尺寸z,s<z。局部响应归一化参考:ht......
  • Sage X3 v12新功能概览
    SageX3Version12于2018年底推出以来,功能一直处于不断的更新和增强中,SageX3版本发布节奏变更以下是我们认为您应该利用的SageX3中一些最好的必备功能。​1.易于使用的用......
  • 【MIT CS6.828】Lab 2: Memory Management - Part 1: Physical Page Management
    Part1:PhysicalPageManagement练习1.在文件kern/pmap.c中,您必须实现以下函数的代码(可能按照给定的顺序)。boot_alloc()mem_init()(只到调用check_page_free_list(1......
  • redis-desktop-manager-0.8.0.3844
    redis-desktop-manager-0.8.0.3844下载地址:https://www.aliyundrive.com/s/Y2fobkVjAdF链接:https://pan.baidu.com/s/1keQMs8Tiaj4liE6tgBe82A提取码:nrt4......
  • Unity性能优化(三) 垃圾回收,Garbage Collection,GC
    Unity的内存管理Unity由两部分内存来组成,原生内存(NativeMemory)和托管内存(ManagedMemory)。其中NativeMemory是引擎管理的内存,大家接触的会比较少,而且可操控性也比较......
  • nginx agent 来自官方的nginx 配置管理&监控方案
    我以前介绍过使用git+api模式的nginx配置管理,同时还介绍过一个基于graylog的日志收集方案,nginxagent是nginx官方提供的nginx配置以及metrics监控解决方案包含的特......