cookie操作:设置cookie、读取cookie、删除cookie
一、设置cookie
function setCookie(name, value){
Days = 1;
var exp = new Date();
exp.setTime(exp.getTime() + Days*24*60*60*1000);
var domain = window.location.host;
var domains = domain.split('.');
if (domains.length === 3){
domains = domains.slice(1,3);
domain = '.' + domains.join('.');
document.cookie = name + "=" + escape (value) + "; expires=" + exp.toGMTString() + ";path=/;domain="+domain;
}else{
domain = domain;
document.cookie = name + "="+ escape (value);
}
}
二、读取cookie
function getCookie(name){
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg))
return unescape(arr[2]);
else
return null;
}
注解:1、例如name=jack;password=123
2、获取值:var pwd = getCookie(password);//pwd值为123
三、删除cookie
function DelCookie(name) {
var domain = window.localhost.host;//获取当前页面域名
var domainArr = domain.split('.');
var exp = new Date();
exp.setTime(exp.getTime() + (-1 * 24 * 60 * 60 * 1000));
var cval = getCookie(name);
if(domainArr.length === 3){
domainArr = domainArr.slice(1,3);
domain = '.'+domainArr.join('.');
}
document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString() + ";path=/;domain="+demain;
}
function getCookie(name){
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
if(arr=document.cookie.match(reg))
return unescape(arr[2]);
else
return null;
}
注解:删除值:DelCookie(name);//删除用户名jack
cookie属性
cookie对象主要属性
name:cookie的名称。
value:cookie的值。
domain:为可以访问此cookie的域名。
(1)非顶级域名,如二级域名或者三级域名,设置的cookie的domain只能为顶级域名或者二级域名或者三级域名本身,不能设置其他二级域名的cookie,否则cookie无法生成。
(2)顶级域名只能设置domain为顶级域名,不能设置为二级域名或者三级域名,否则cookie无法生成。
(3)二级域名能读取设置了domain为顶级域名或者自身的cookie,不能读取其他二级域名domain的cookie。所以要想cookie在多个二级域名中共享,需要设置domain为顶级域名,这样就可以在所有二级域名里面或者到这个cookie的值了。
顶级域名只能获取到domain设置为顶级域名的cookie,其他domain设置为二级域名的无法获取。
path:为可以访问此cookie的页面路径。 比如domain是abc.com,path是/test,那么只有/test路径下的页面可以读取此cookie。
expires/Max-Age :为此cookie超时时间。若设置其值为一个时间,那么当到达此时间后,此cookie失效。不设置的话默认值是Session,意思是cookie会和session一起失效。当浏览器关闭(不是浏览器标签页,而是整个浏览器) 后,此cookie失效。
Size:cookie的大小。
http: cookie的httponly属性。若此属性为true,则只有在http请求头中会带有此cookie的信息,而不能通过document.cookie来访问此cookie。
secure : 设置是否只能通过https来传递此条cookie
cookie操作:设置cookie、读取cookie、删除cookie的更多相关文章
- JS读写Cookie(设置、读取、删除)
JS读写Cookie(设置.读取.删除) Cookie是客户端存放数据的一种方式,可用来做状态保持. 1.设置Cookie: a.无过期时间:(若不设置过期时间,默认为会话级Cookie,浏览器关闭就 ...
- 设置、读取、删除cookie
刚才用虚拟机当服务器,开了两个服务(端口号不同),发现同样的cookie:在别的网站下面没有发现该cookie.说明cookie只是对应相应的网站的(自己得出的结论) ---------------- ...
- JS 浏览器cookie的设置,读取,删除
JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的. 而cookie是运行在客户端的,所以可以用JS来设置cookie. 假设有这样一 ...
- js设置、读取、删除cookie
设置cookie: function setCookie(oJson , time){ var data = new Date( new Date().getTime() + time*24*60*6 ...
- 什么是cookie?cookie的使用(设置,读取,删除)
1.什么是cookie? 页面用来保存信息 比如:自动登录,记住用户名 cookie的特性 同一个网站所有页面共用一套cookie ...
- JS封装cookie操作函数实例(设置、读取、删除)
本文实例讲述了JS封装cookie操作函数.分享给大家供大家参考,具体如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 ...
- 2.在程序中如何实现Cookie信息的设置,读取和删除
设置:你可以在IE的“工具/Internet选项”的“常规”选项卡中,选择“设置/查看文件”,查看所有保存到你电脑里的Cookies.这些文件通常是以user@domain格式命名的,user是你的本 ...
- Js添加、读取、删除cookie,判断cookie是否有效,指定domain域下主路径path下设置cookie,设置expires过期时间
有时我们需要用cookie保存用户名,记录登录状态,如何正确判断该机用户cookie是否存在呢?不能简单使用a!=”这样的写法. 正确方法是:判断是否存在名为username3的cookie,使用do ...
- JS学习笔记 - cookie设置、读取、删除
<script> // 设置cookie function setCookie(name, value, iDay) { var oDate = new Date(); oDate.set ...
- Cookie的属性(cookie的设置、获取和删除)
每个cookie都有四个可选的属性,他们分别控制cookie的生存周期.可见性.安全性等. Cookies最初设计时,是为了CGI编程.但是,我们也可以使用Javascript脚本来操纵cookies ...
随机推荐
- [转][C#]Combobox 行高
namespace System.Windows.Forms { class ComboBoxEx : ComboBox { public ComboBoxEx() { DrawMode = Syst ...
- gmake缺失错误
原文:http://blog.csdn.net/syh_486_007/article/details/53862831 编译nachos程序的时候发现了这样一个错误gmake: command no ...
- 阿里直播在线人数只统计rtmp格式的播放源
- css学习(1)
一.标签选择器 标签{属性:值;} <!DOCTYPE html> <html lang="en"> <head> <meta chars ...
- Windows下 训练Tesseract实现识别图片中的文字
介绍 Tesseract是一个基于Apache2.0协议开源的跨平台ocr引擎,支持多种语言的识别,在Windows和Linux上都有良好的支持. 源代码在这: 源码地址 有一个编译打包好的Windo ...
- Linux性能优化 第三章 性能工具:系统内存
3.1内存性能统计信息 3.1.1 内存子系统和性能 和CPU相比,内存的读写速度都大大落后于CPU.为了弥补这个差距,通常CPU会采用高速缓存的机制(高cache). 3.1.2 内存子系统(虚拟存 ...
- RSA加密解密,String转PublicKey、PrivateKey;附Base64.JAR
网络请求的数据需要加密,服务器给的他们那一套在Android一直报错,自己写了一个: package com.cc.common.util; import javax.crypto.Cipher; i ...
- Vue项目,运行出现warning(Emitted value instead of an instance of Error)
组件:<XXXX v-for="item in items" /> warning:(Emitted value instead of an instance of E ...
- 【MySql】【Navicat】下载,安装,激活攻略
来了一家新公司,新电脑,最近申请了DB访问的权限. 公司用的MySql数据库,自己下载了MySql workbench,用的也还不错. 现在下载了一个Navicat,比较讨厌的是,现在很多软件都需要注 ...
- js中的面向对象--类似于类的概念
创建对象的几种常用方式 1.使用Object或对象字面量创建对象 2.工厂模式创建对象 3.构造函数模式创建对象 4.原型模式创建对象 1.使用Object或对象字面量创建对象 使用object va ...