基于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 相关文章推荐
自己开发Dojo的建议框架
Sep 24 Javascript
IE6-IE9中tbody的innerHTML不能赋值的解决方法
Sep 26 Javascript
JavaScript DOM元素尺寸和位置
Apr 13 Javascript
javascript密码强度校验代码(两种方法)
Aug 10 Javascript
获取当前月(季度/年)的最后一天(set相关操作及应用)
Dec 27 Javascript
require.js中的define函数详解
Jul 10 Javascript
微信小程序在地图选择地址并返回经纬度简单示例
Dec 03 Javascript
Angular脚手架开发的实现步骤
Apr 09 Javascript
Node.js对MongoDB进行增删改查操作的实例代码
Apr 18 Javascript
vue的列表交错过渡实现代码示例
May 05 Javascript
javascript中undefined的本质解析
Jul 31 Javascript
Jquery+javascript实现支付网页数字键盘
Dec 21 jQuery
基于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 Socket配置以及实例的详细介绍
2013/06/13 PHP
PHP实现的回溯算法示例
2017/08/15 PHP
教你如何自定义百度分享插件以及bshare分享插件的分享按钮
2014/06/20 Javascript
js判断浏览器版本以及浏览器内核的方法
2015/01/20 Javascript
Sort()函数的多种用法
2016/03/20 Javascript
Nodejs如何搭建Web服务器
2016/03/28 NodeJs
原生js封装二级城市下拉列表的实现代码
2016/06/16 Javascript
url传递的参数值中包含&时,url自动截断问题的解决方法
2016/08/02 Javascript
Node.js用readline模块实现输入输出
2016/12/16 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
2017/04/23 jQuery
jQuery实现全选、反选和不选功能
2017/08/16 jQuery
详解vue通过NGINX部署在子目录或者二级目录实践
2018/09/03 Javascript
vue 搭建后台系统模块化开发详解
2019/05/01 Javascript
了解JavaScript中的选择器
2019/05/24 Javascript
在vue项目中使用codemirror插件实现代码编辑器功能
2019/08/27 Javascript
vue-simple-uploader上传成功之后的response获取代码
2020/09/07 Javascript
python实现博客文章爬虫示例
2014/02/26 Python
Python对字符串实现去重操作的方法示例
2017/08/11 Python
python爬取内容存入Excel实例
2019/02/20 Python
举例讲解Python常用模块
2019/03/08 Python
12个步骤教你理解Python装饰器
2019/07/01 Python
python 使用plt画图,去除图片四周的白边方法
2019/07/09 Python
python主线程与子线程的结束顺序实例解析
2019/12/17 Python
tensorflow实现二维平面模拟三维数据教程
2020/02/11 Python
HTML5 本地存储 LocalStorage详解
2016/06/24 HTML / CSS
THE OUTNET英国官网:国际设计师品牌折扣网站
2016/08/14 全球购物
瑞士灯具购物网站:Lampenwelt.ch
2018/07/08 全球购物
Vinatis德国:法国领先的葡萄酒邮购公司
2020/09/07 全球购物
暑期实践思想汇报
2014/01/06 职场文书
致全体运动员广播稿
2014/02/01 职场文书
一体化教学实施方案
2014/05/10 职场文书
运动会班级口号
2014/06/09 职场文书
国际经济贸易专业自荐信
2014/06/13 职场文书
乡镇食品安全责任书
2014/07/28 职场文书
大学生职业生涯规划大赛作品(精品)
2014/09/17 职场文书
nginx里的rewrite跳转的实现
2021/03/31 Servers