基于Cookie常用操作以及属性介绍


Posted in Javascript onSeptember 07, 2017

概述

最近项目要用到cookie存储部分用户信息;研究了一下做一下分享

Cookie 是服务器保存在浏览器的一小段文本信息,每个 Cookie 的大小一般不能超过4KB。浏览器每次向服务器发出请求,就会自动附上这段信息。

设置cookie存储

document.cookie = 'userName=fengkaicahng';

注意 设置cookie一次只能存储一条

cookie可以多次设置 key相同不会重新赋值而是会新建一条cookie

读取cookie

var allCookies = document.cookie;

//一次读取所有cookie 字符串形式
//所以一般我们还要做一次转换

var cookiesArray = document.cookie.split(';');

 console.log(cookiesArray);

cookie的几个属性

value (必须)一个键值对,用来指定cookie的值

document.cookie = 'userName=fengkaicahng';

expires 指定Cookie过期时间;格式采用Date.toUTCString()

var day = new Date();
 day.setTime(day.getTime()+(1*24*60*60*1000));

//设置一天的有效期
//如果不设置; 默认时间是当前会话窗口关闭即失效

document.cookie = 'userName=fengkaicahng;expires="+day+"';

domain 指定发送Cookie的域名

var day = new Date();
 day.setTime(day.getTime()+(1*24*60*60*1000));

//只有在该域名下才发送cookie,
//如果不设置; 默认是设置cookie时的域名
//以下配置会在fengkaichang.com 的所有子域名下生效

document.cookie = 'userName=fengkaicahng;expires='+day+';domain=fengkaichang.com;

path 指定Cookie的路径

var day = new Date();
 day.setTime(day.getTime()+(1*24*60*60*1000));

//只有这个路径和发送到服务器的路径相同才发送cookie 可以直接配置/ 从根目录下匹配 这个匹配并不是绝对的,
//如果不设置; 默认是请求该cookie时的路径
//以下配置会在fengkaichang.com 的所有请求路径下生效
//注意 path生效的前提是domain匹配成功,否则都是扯淡


document.cookie = 'userName=fengkaicahng;expires='+day+';domain=fengkaichang.com;path=/'

secure 指定Cookie只能在加密协议HTTPS下发送到服务器

var day = new Date();
 day.setTime(day.getTime()+(1*24*60*60*1000));

//这个属性的值是一个布尔值
//如果这个通信协议是HTTPS那么协议自动打开
//如果手动设置 一下配置不会在普通HTTP协议下发送

document.cookie = 'userName=fengkaicahng;expires='+day+';domain=fengkaichang.com;path=/;secure=true'

以上这篇基于Cookie常用操作以及属性介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
国外Lightbox v2.03.3 最新版 下载
Oct 17 Javascript
跨浏览器开发经验总结(三)   警惕“IE依赖综合症”
May 13 Javascript
WEB 浏览器兼容 推荐收藏
May 14 Javascript
JavaScript 实现类的多种方法实例
May 01 Javascript
使用js获取地址栏中传递的值
Jul 02 Javascript
javascript不可用的问题探究
Oct 01 Javascript
JavaScript实现简单图片滚动附源码下载
Jun 17 Javascript
js怎么判断flash swf文件是否加载完毕
Aug 14 Javascript
javascript 正则表达式去空行方法
Jan 24 Javascript
Vue原理剖析 实现双向绑定MVVM
May 03 Javascript
Vue基本使用之对象提供的属性功能
Apr 30 Javascript
详解JavaScript匿名函数和闭包
Jul 10 Javascript
基于require.js的使用(实例讲解)
Sep 07 #Javascript
基于vue.js路由参数的实例讲解——简单易懂
Sep 07 #Javascript
JQuery 获取多个select标签option的text内容(实例)
Sep 07 #jQuery
jQuery UI Draggable + Sortable 结合使用(实例讲解)
Sep 07 #jQuery
jQueryUI Sortable 应用Demo(分享)
Sep 07 #jQuery
Django使用多数据库的方法
Sep 06 #Javascript
node.js实现微信JS-API封装接口的示例代码
Sep 06 #Javascript
You might like
重置版宣传动画
2020/04/09 魔兽争霸
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
2014/07/04 PHP
PHP+MySQL使用mysql_num_rows实现模糊查询图书信息功能
2018/05/31 PHP
js实现网页倒计时、网站已运行时间功能的代码3例
2014/04/14 Javascript
jQuery实现进度条效果代码
2015/12/17 Javascript
浅析javascript异步执行函数导致的变量变化问题解决思路
2016/05/13 Javascript
原生js编写基于面向对象的分页组件
2016/12/05 Javascript
js实现动态添加上传文件页面
2018/10/22 Javascript
vue地址栏直接输入路由无效问题的解决
2018/11/15 Javascript
使用react render props实现倒计时的示例代码
2018/12/06 Javascript
IDEA安装vue插件图文详解
2019/09/26 Javascript
JavaScript如何把两个数组对象合并过程解析
2019/10/10 Javascript
VUE 动态组件的应用案例分析
2019/12/02 Javascript
使用PreloadJS加载图片资源的基础方法详解
2020/02/03 Javascript
bootstrapValidator表单校验、更改状态、新增、移除校验字段的实例代码
2020/05/19 Javascript
jQuery实现的分页插件完整示例
2020/05/26 jQuery
在vue中使用echarts(折线图的demo,markline用法)
2020/07/20 Javascript
Python的Flask框架中实现简单的登录功能的教程
2015/04/20 Python
python Flask实现restful api service
2017/12/04 Python
python保存数据到本地文件的方法
2018/06/23 Python
Python常见MongoDB数据库操作实例总结
2018/07/24 Python
tensorflow更改变量的值实例
2018/07/30 Python
Python实现钉钉发送报警消息的方法
2019/02/20 Python
多个python文件调用logging模块报错误
2020/02/12 Python
jupyter notebook 使用过程中python莫名崩溃的原因及解决方式
2020/04/10 Python
css3media响应式布局实例
2016/07/08 HTML / CSS
芬兰汽车配件商店:Autonvaraosat24
2017/01/30 全球购物
介绍一下.net和Java的特点和区别
2012/09/26 面试题
业务主管岗位职责
2013/11/20 职场文书
学校清洁工岗位职责
2015/04/15 职场文书
机关单位保密工作责任书
2015/05/11 职场文书
2015秋季开学典礼致辞
2015/07/16 职场文书
演讲比赛通讯稿
2015/07/18 职场文书
寒假致家长的一封信
2015/10/10 职场文书
Nginx tp3.2.3 404问题解决方案
2021/03/31 Servers
详解Python requests模块
2021/06/21 Python