JavaScript操作Cookie
在Web开发中,我们经常使用Cookie保存一些不是非常敏高的数据。比如“下次自动登录”,“广告显示”等功能。定义是:某些网站为了辨别用户身份而存储在用户本地终端(主要是浏览器)上的数据。定义域RFC2109。
Cookie总是保存在客户端中,可分为Cookie和硬盘Cookie。内存Cookie保存在内存中,浏览器关闭之后就消失了。硬盘Cookie保存在硬盘里面,有过期时间,除非用户手动清理或者其他网页脚本处理,或者到了Cookie的过期时间。
Cookie的发明目的,因为HTTP协议是无状态的,服务器不知道用户上一次做了什么,这样浏览器和服务器交互时,服务器不知道浏览器的任何状态。服务器借助浏览器设置或读取Cookie中的信息,借此维护浏览器和服务器的会话状态。
通过document.cookie,我们可以写入cookie或读取cookie。代码如下:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<script type="text/javascript">
//写入cookie
function setCookie(c_name, value, expiredays) {
var exdate = new Date();
exdate.setDate(exdate.getDate() + expiredays);
document.cookie=c_name+"="+escape(value)+
((expiredays==null)?"":";expires"+exdate.toGMTString())
}
setCookie("username", "Lee", 365);
setCookie("password", "小明", 365); //读取cookie
function getCookie(c_name) {
if (document.cookie.length > 0) {
c_start = document.cookie.indexOf(c_name + "=");
if (c_start != -1) {
c_start = c_start + c_name.length + 1;
c_end = document.cookie.indexOf(";", c_start);
return unescape(document.cookie.substring(c_start, c_end));
}
}
return "";
}
var temp_cookie = "username=Lee; password=%u5C0F%u660E";
var cookiename="username";
var start = temp_cookie.indexOf(cookiename+"=");//0
if(start!=-1){
start = start + cookiename.length + 1;//1是等号的长度
end = temp_cookie.indexOf(";", start);//找到分号
console.log(unescape(temp_cookie.substring(start,end)));
}
</script>
</body>
</html>
Cookie在隐私,安全和广告的问题
很多网站,特别是新闻门户和电商网站,都会在用户访问该页面时,写入Cookie。然后你在访问其他网站或电商网站,这些网站也会读取这些cookie,当然确保可以读到cookie信息。然后后台广告服务器根据cookie的信息,为这个网站显示广告。也就是经常在网络营销里面提到的“人群定向”。
参考资料:
1.http://zh.wikipedia.org/wiki/Cookie
JavaScript操作Cookie的更多相关文章
- Cookie介绍及JavaScript操作Cookie方法详解
本文主要为大家简单介绍了以下Cookie的用途.运行机制,以及JavaScript操作Cookie的各种方法,总结的比较全面,希望能给大家带来帮助. 什么是 Cookie “cookie 是存储于访问 ...
- JavaScript 操作 Cookie
转自作者:聂微东出处:http://www.cnblogs.com/Darren_code/ 什么是 Cookie “cookie 是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器 ...
- javaScript操作cookie出现同名key
引文: 网上查找js操作cookie文章发现百度千篇一律全是同样的代码,使用过程中发现一个bug,设置cookie导致出现多个同名key的cookie,官网cookie文档内未提及,下文将标出问题点, ...
- JavaScript操作cookie基础分析
简要介绍 cookie是什么cookie是HTTP协议的一部分.HTTP Cookie(也叫Web cookie或者浏览器Cookie)是服务器发送到用户浏览器并保存在浏览器上的一块数据,它会在浏览器 ...
- javascript 操作cookie
function setCookie(c_name, value, expiredays) { var exdate = new Date(); exdate.setDate(exdate.getDa ...
- Javascript操作Cookie的脚本 — CookieHelper
var HttpCookie = function(name, value, expires, path, domain) { if (name) this.Name = name; if (valu ...
- 【转载】使用Jquery操作Cookie对象
Cookies是一种能够让网站服务器把少量数据储存到客户端的硬盘或内存,或是从客户端的硬盘读取数据的一种技术.jQuery是一个封装好的JavaScript库,使用jQuery可以极大地简化了Java ...
- JavaScript能否操作cookie和session?
JavaScript能否操作cookie和session? 解答:JavaScript可以操作cookie,但是不能操作session
- java与javascript对cookie操作的工具类
Java对cookie的操作 package cn.utils; import java.util.HashMap; import java.util.Map; import javax.servle ...
随机推荐
- 【转贴】Python处理海量数据的实战研究
最近看了July的一些关于Java处理海量数据的问题研究,深有感触,链接:http://blog.csdn.net/v_july_v/article/details/6685962 感谢July ^_ ...
- 从问题看本质:socket到底是什么?
一.问题的引入——socket的引入是为了解决不同计算机间进程间通信的问题 1.socket与进程的关系 1).socket与进程间的关系:socket 用来让一个进程和其他的进程互通信息(IPC ...
- 学习安装并配置前端自动化工具Gulp
Gulp和所有Gulp插件都是基于nodeJs来运行的,因此在你的电脑上需要安装nodeJs,安装过程请移驾安装并配置前端自动化工具--grunt.安装完成后,通过运行cmd进入DOS命令窗口,如图: ...
- Struts 2的OGNL的根对象
Struts2中的OGNL表达式语言是对Xwork的OGNL的封装.我们要理解一下几点: 1. Struts2中将ActionContext作为OGNL的上下文环境(ActionContext内部含有 ...
- Jquery、简单的下拉列表、网页左部导航菜单
简单的下拉菜单.左部导航使用. 2016-5-13 记 效果图如下: <!DOCTYPE html> <html lang="en"> <head&g ...
- 谢欣伦 - OpenDev原创教程 - 蓝牙设备查找类CxBthRemoteDeviceFind
这是一个精练的蓝牙设备查找类,类名.函数名和变量名均采用匈牙利命名法.小写的x代表我的姓氏首字母(谢欣伦),个人习惯而已,如有雷同,纯属巧合. CxBthRemoteDeviceFind的使用如下: ...
- ex1-第一个程序 ”helloworld”
代码: print("Hello world.")print("Hello again.")print("I like typing this.&qu ...
- Windows系统上的.Net版本和.NETFramework的C#版本
前言 注:本文内容摘自维基百科,用于在墙内时当作笔记看. WinForm 需要.Net最低版本 2.0 WPF需要的.Net最低版本 3.0 (Win7及之上版本自带) C#版本 版本 语言规格 日期 ...
- 单元测试模拟框架:Nsubstitute
Nsubstitute是一个开源的框架,源码是C#实现的.你可以在这里获得它的源码:https://github.com/nsubstitute/NSubstitute NSubstitut ...
- 安卓动态调试七种武器之长生剑 - Smali Instrumentation
安卓动态调试七种武器之长生剑 - Smali Instrumentation 作者:蒸米@阿里聚安全 0x00 序 随着移动安全越来越火,各种调试工具也都层出不穷,但因为环境和需求的不同,并没有工具是 ...