基于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 相关文章推荐
很全的显示阴历(农历)日期的js代码
Jan 01 Javascript
jQuery中用dom操作替代正则表达式
Dec 29 Javascript
jQuery内容过滤选择器用法示例
Sep 09 Javascript
JS获取鼠标相对位置的方法
Sep 20 Javascript
jQuery Validation Engine验证控件调用外部函数验证的方法
Jan 18 Javascript
js数字计算 误差问题的快速解决方法
Feb 28 Javascript
VUE开发一个图片轮播的组件示例代码
Mar 06 Javascript
mongoose更新对象的两种方法示例比较
Dec 19 Javascript
jQuery实现鼠标点击处心形漂浮的炫酷效果示例
Apr 12 jQuery
微信小程序导航栏跟随滑动效果的实现代码
May 14 Javascript
JS中FormData类实现文件上传
Mar 27 Javascript
vue form表单post请求结合Servlet实现文件上传功能
Jan 22 Vue.js
基于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 cookie 作用范围?不要在当前页面使用你的cookie
2009/03/24 PHP
php中存储用户ID和密码到mysql数据库的方法
2013/02/06 PHP
探讨:parse url解析URL,返回其组成部分
2013/06/14 PHP
phpmyadmin配置文件现在需要绝密的短密码(blowfish_secret)的2种解决方法
2014/05/07 PHP
10款实用的PHP开源工具
2015/10/23 PHP
PHP.vs.JAVA
2016/04/29 PHP
php实现与python进行socket通信的方法示例
2017/08/30 PHP
PHP中通过getopt解析GNU C风格命令行选项
2019/11/18 PHP
广泛收集的jQuery拖放插件集合
2012/04/09 Javascript
jquery仿百度经验滑动切换浏览效果
2015/04/14 Javascript
javascript实现在网页任意处点左键弹出隐藏菜单的方法
2015/05/13 Javascript
JQuery中上下文选择器实现方法
2015/05/18 Javascript
JavaScript编写连连看小游戏
2015/07/07 Javascript
详细解读JavaScript的跨浏览器事件处理
2015/08/12 Javascript
js判断radiobuttonlist的选中值显示/隐藏其它模块的实现方法
2016/08/25 Javascript
详解VUE里子组件如何获取父组件动态变化的值
2018/12/26 Javascript
VUE 直接通过JS 修改html对象的值导致没有更新到数据中解决方法分析
2019/12/02 Javascript
vue下载二进制流图片操作
2020/10/26 Javascript
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
vite2.0+vue3移动端项目实战详解
2021/03/03 Vue.js
Python使用urllib2模块实现断点续传下载的方法
2015/06/17 Python
pycham查看程序执行的时间方法
2018/11/29 Python
PyQt5使用QTimer实现电子时钟
2019/07/29 Python
基于TensorFlow常量、序列以及随机值生成实例
2020/01/04 Python
详解python tkinter模块安装过程
2020/01/06 Python
pyecharts动态轨迹图的实现示例
2020/04/17 Python
在服务器上安装python3.8.2环境的教程详解
2020/04/26 Python
Timberland德国官网:靴子、鞋子、衣服、夹克及配件
2019/12/10 全球购物
财务会计专业推荐信
2013/11/30 职场文书
促销活动计划书
2014/05/02 职场文书
小学兴趣小组活动总结
2014/07/07 职场文书
护理实习生带教计划
2015/01/16 职场文书
62句有关感恩节文案(推荐收藏)
2019/11/28 职场文书
导游词之青岛崂山
2019/12/27 职场文书
GoFrame gredis缓存DoVar Conn连接对象 自动序列化GoFrame gredisDo/DoVar方法Conn连接对象自动序列化/反序列化总结
2022/06/14 Golang
ECharts transform数据转换和dataZoom在项目中使用
2022/12/24 Javascript