基于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 相关文章推荐
javascript Xml增删改查(IE下)操作实现代码
Jan 30 Javascript
一个javascript图片阅览组件
Nov 09 Javascript
js实现两个值相加alert出来精确到指定位
Sep 25 Javascript
JavaScript设置获取和设置属性的方法
Mar 04 Javascript
简介JavaScript中Boolean.toSource()方法的使用
Jun 05 Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
Nov 03 Javascript
jQuery实现内容定时切换效果完整实例
Apr 06 Javascript
Jquery插件仿百度搜索关键字自动匹配功能
May 11 Javascript
基于vue的fullpage.js单页滚动插件
Mar 20 Javascript
React Native如何消除启动时白屏的方法
Aug 08 Javascript
Vue+Vux项目实践完整代码
Nov 30 Javascript
vue+element-ui表格封装tag标签使用插槽
Jun 18 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
php Smarty初体验二 获取配置信息
2011/08/08 PHP
PHP原生模板引擎 最简单的模板引擎
2012/04/25 PHP
解析Ubuntu下crontab命令的用法
2013/06/24 PHP
php将url地址转化为完整的a标签链接代码(php为url地址添加a标签)
2014/01/17 PHP
PHP实现在线阅读PDF文件的方法
2015/06/17 PHP
PHP中文竖排转换实现方法
2015/10/23 PHP
JavaScript Array Flatten 与递归使用介绍
2011/10/30 Javascript
js调用图片隐藏&显示实现代码
2013/09/13 Javascript
js克隆对象、数组的常用方法介绍
2013/09/26 Javascript
node.js中的fs.link方法使用说明
2014/12/15 Javascript
JavaScript实现列出数组中最长的连续数
2014/12/29 Javascript
百度UEditor编辑器如何关闭抓取远程图片功能
2015/03/03 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
2016/02/02 Javascript
动态加载js、css的实例代码
2016/05/26 Javascript
jQuery制作图片旋转效果
2017/02/02 Javascript
解决v-for中使用v-if或者v-bind:class失效的问题
2018/09/25 Javascript
基于webpack4+vue-cli3项目实现换肤功能
2019/07/17 Javascript
基于JavaScript 实现拖放功能
2019/09/12 Javascript
JS实现导航栏楼层特效
2020/01/01 Javascript
高性能web服务器框架Tornado简单实现restful接口及开发实例
2014/07/16 Python
Python函数中*args和**kwargs来传递变长参数的用法
2016/01/26 Python
python去掉行尾的换行符方法
2017/01/04 Python
Python格式化输出%s和%d
2018/05/07 Python
django admin 根据choice字段选择的不同来显示不同的页面方式
2020/05/13 Python
python ETL工具 pyetl
2020/06/07 Python
python 实现Requests发送带cookies的请求
2021/02/08 Python
聪明的粉丝购买门票的地方:TickPick
2018/03/09 全球购物
受希腊女神灵感的晚礼服、鸡尾酒礼服和婚纱:THEIA
2018/04/15 全球购物
寻找迷宫的一条出路,o通路;X:障碍
2016/07/10 面试题
体育教育毕业生自荐信
2013/11/21 职场文书
经销商会议欢迎词
2014/01/11 职场文书
社区禁毒工作方案
2014/06/02 职场文书
团队拓展活动方案
2014/08/28 职场文书
音乐之声音乐广播稿
2014/09/10 职场文书
英雄儿女观后感
2015/06/09 职场文书
新闻稿件写作技巧
2015/07/18 职场文书