从零开始学习前端JAVASCRIPT — 8、JavaScript基础COOKIE
1:通信协议
定义:通信协议是指双方实体完成通信或服务所必须遵循的规则和约定。协议定义了数据单元使用的格式,信息单元应该包含的信息与含义,连接方式,信息发送和接收的时序,从而确保网络中数据顺利地传送到确定的地方。(通信间交流的规则)
在计算机通信中,通信协议用于实现计算机与网络连接之间的标准,网络如果没有统一的通信协议,电脑之间的信息传递就无法识别。 通信协议是指通信各方事前约定的通信规则,可以简单地理解为各计算机之间进行相互会话所使用的共同语言。两台计算机在进行通信时,必须使用的通信协议。
计算机网络资源地址:1)http://www.cnblogs.com/usa007lhy/p/4878322.html
2)http://blog.csdn.net/basycia/article/details/51880172
常见的协议:TCP/IP协议、HTTP协议、FTP协议等等。
1)FTP协议
File Transfer Protocol(文件传输协议),用于Internet上控制文件的双向传输。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
2)TCP/IP协议
TCP/IP(Transmission Control Protocol/Internet Protocol)传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台联网设备规定一个地址。
UDP协议:UDP(User Datagram Protocol)用户数据报协议。在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。
TCP协议和UDP协议的区别:如果TCP比作是打电话,那么UDP就是在发短信。
TCP面向连接的协议(通信之前必须先建立连接),于是,TCP相对可靠,它建立连接的过程称为3次握手。
第一个特点:三次握手,建立连接。
第二个特点:所有的消息,需要对方确认送达。当消息发送失败,则对当前消息开始进行重复发送,直至收到回应为止。因此可以确保数据的准确送达。
举例:
局域网游戏,往往都有这样的特点,当多人联机对战时,若有一个人掉线 其他所有玩家进入读秒状态,那么说明玩家和玩家之间采用了TCP协议。 因为对于游戏来讲,它不允许丢失任何数据,不然有可能出现两边不一致的情况: 我这边画面一刀把你砍死了,你那边画面却吃了个大血瓶抗住了。。。。。
UDP面向数据报的协议 (不可靠的协议):无需建立连接 发送消息也无需对方确认 无法保证数据的发送顺序,以及准确率。
数据的发送顺序是 a.........b.........c...........d 由于网路延迟的原因,对方收到数据的顺序有可能是b...........d..........a。
UDP通常用于视频、语音等通信(丢掉了一帧画面是无所谓的)。
3)HTTP协议
超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。该协议用于从WWW服务器传输超文本到本地浏览器的传输协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。
HTTP协议是一个无状态的通信协议,一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接。它基于TCP协议的一种高级协议,用于客户端和服务器直接的通信。
2:cookie
cookie的概念:指某些网站为了辨别用户身份,进行session(会话)跟踪而存储在用户本地终端上的数据(通常经过加密)。以文本形式存在。
谷歌浏览器存储地址: C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default\文件夹下的Cookies文件。
禁用cookie:改变浏览器的cookie设置。如果浏览器完全禁止cookie功能的话,大多数网站的基本功能无法正常使用。
cookie的特点
1)chrome和safari没有对cookie的个数做限制,一般浏览器限制同一域名数量为50个。
2)cookie文件的总大小一般为4KB(同一个域名)。
3)只能使用文本文件。
4)读取有域名限制。
不可跨域读取,只能由来自 写入cookie的 同一域名 的网页可进行读取。 简单的讲就是,谁写的cookie,谁才有权利读取 (身份牌是我发你的,当然只有我能读取,你媳妇儿的手机自动连接了邻居老王家的wifi,你知道这意味着什么吗?)
5)时效限制。
每个cookie都有时效,最短的有效期是,会话级别:就是当浏览器关闭,那么cookie立即销毁。
6)cookie的使用
添加cookie:document.cookie = “key=value”; // 一次写入一个键值对
读取cookie:document.cookie;
修改cookie:document.cookie = “key=value”; // 修改名为key的cookie值
删除cookie:将cookie值覆盖为空,并将失效时间设置为失效时间。
失效时间:expires
var oDate = new Date();
oDate.setDate(oDate.getDate() + iDay);
设置失效时间:document.cookie = “key=value;expires=”+ oDate;
设置域名:domain
设置域名:document.cookie = “key=value;domain=.baidu.com“;
注:必须在绑定域名的服务器才可以设置域名,上不同服务器之间的cookie文件不能共享。
设置路径:path
设置路径: document.cookie = “key=value;path=/“;
注:在同一路径下的网页可以共享cookie,路径不同时不可以访问。
注:如果有中文内容,需要用encodeURIComponent(‘xxxx’)进行编码,再使用decodeURIComponent(‘xxxx’)进行解码,解决中文乱码的问题。
7)cookie的封装
增加/修改cookie函数:
function setCookie(name,value,iDay){
var newDate = new Date();
newDate.setDate(newDate.getDate()+iDay);
document.cookie=name+"="+value+";expires="+newDate;
}
setCookie("user","andy",7);
获取cookie函数:
function getCookie(name){
var arr = document.cookie().split("; ");
for(var i =0; i<arr.length; i++){
var arr2 = arr[i].split("=");
if(arr2[0] == name){
return arr2[1];
}
}
}
删除cookie函数:
function removeCookie(name){
setCookie(name,1,-1);
}
removeCookie("user");
从零开始学习前端JAVASCRIPT — 8、JavaScript基础COOKIE的更多相关文章
- 李洪强和你一起学习前端之(3)Css基础和选择器
大家好! 经过了前面的学习,是不是对前端的学习有了初步的了解.虽然我之前有iOS开发的经验,现在接触一门新的语言,对我来说 有一定的优势,但是一门技术对于谁来说都是公平的,我承认,我在接触新知识的时候 ...
- 从零开始学习前端JAVASCRIPT — 1、JavaScript基础
1:定义:javascript是一种弱类型.动态类型.解释型的脚本语言. 弱类型:类型检查不严格,偏向于容忍隐式类型转换. 强类型:类型检查严格,偏向于不容忍隐式类型转换. 动态类型:运行的时候执行类 ...
- 从零开始学习前端JAVASCRIPT — 2、JavaScript基础ES5
1:ES5简介 ECMAScript 5.1 (或仅 ES5) 是ECMAScript(基于JavaScript的规范)标准的修正. 与HTML5规范进程本质类似,ES5通过对现有JavaScript ...
- 从零开始学习前端JAVASCRIPT — 10、JavaScript基础ES6(ECMAScript6.0)
ECMAScript 6.0(简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了.它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发 ...
- 从零开始学习前端JAVASCRIPT — 7、JavaScript基础EVENT
1:事件驱动 1)事件:所谓事件就是js侦测到的用户的操作或是页面的一些行为(怎么发生的) 2)事件源对象:引发事件的元素.(发生在谁的身上) 3)事件处理程序:对事件处理的程序或是函数 (发生了什么 ...
- 从零开始学习前端JAVASCRIPT — 9、JavaScript基础RegExp(正则表达式)
1:正则的概念 正则表达式(regular expression)是一个描述字符规则的对象.可以用来检查一个字符串是否含有某个子字符串,将匹配的子字符串做替换或者从某个字符串中取出符合某个条件的子串等 ...
- 从零开始学习前端JAVASCRIPT — 4、JavaScript基础Math和Date对象的介绍
Math对象的介绍 1:Math对象 Math 对象用于执行数学任务.并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math().您无需创建它,通过把 Math 作为对象使用就 ...
- 从零开始学习前端JAVASCRIPT — 3、JavaScript基础string字符串介绍
1:字符串 JS中的任何数据类型都可以当作对象来看.所以string既是基本数据类型,又是对象. 2:声明字符串 基本数据类型:var sStr = '字符串'; 对象的方法:var oStr = n ...
- 从零开始学习前端JAVASCRIPT — 6、JavaScript基础DOM
1:DOM(Document Object Model)的概念和作用 document对象是DOM核心对象:对html中的内容,属性,样式进行操作. 节点树中节点之间的关系:父子,兄弟. 2:DO ...
随机推荐
- MySql命令集合
1.mysql命令用户连接数据库 mysql命令格式: mysql -h主机地址 -u用户名 -p用户密码 (1) 连接到本机上的MYSQL 首先打开DOS窗口,然后进入目录mysql\bin,再键入 ...
- JAVA构造函数在超类与子类定义鲁波总结
1.子类无构造函数,超类无构造函数,创建的无参数的对象: 编译通过. class A { } class B extends A { } public class Testeeer { public ...
- fir 窗口设计法
加窗的原因.对于理想的低通滤波器H(exp(jw)),其h(n)是无限长序列.这是可以证明的.因此为了得到有限长的h(n)就需要截断,而这个过程就是加窗.由于h(n)截断即其频率响应就和理想的低通滤波 ...
- Linux 服务器--Iptables 端口转发
日常Iptables 端口转发 需求:公司是局域网络,通过一个外网ip,进行互联网的访问.公司的云平台服务器在公网中,虚拟化平台中有一台内部服务器,用于公司某部门的使用,上面运行www 服务,ssh端 ...
- 转 Quartz将Job持久化所需表的说明
QRTZ_CALENDARS 以 Blob 类型存储 Quartz 的 Calendar 信息 QRTZ_CRON_TRIGGERS 存储 Cron Trigger,包括 Cron表达式和时区信息 ...
- CSRF进阶之打造一个检测CSRF漏洞的脚本
前言: 还记得之前所学的CSRF漏洞吧.因为没有对表单做好对应的漏洞 而造成的CSRF漏洞.学了这个漏洞后逐渐的了解.这个比较鸡助. 代码: import requests,tqdm,time,os, ...
- 关注下Swoole
面向生产环境的 PHP 异步网络通信引擎 使 PHP 开发人员可以编写高性能的异步并发 TCP.UDP.Unix Socket.HTTP,WebSocket 服务.Swoole 可以广泛应用于互联网. ...
- Rhythmk 一步一步学 JAVA (16) dom4j 操作XML
1.项目文件结构图: 2.文件代码: doc.xml <?xml version="1.0" encoding="UTF-8"?> <Shop ...
- 模板导入 {include 模块名}
模板导入可以和上面讲的模板继承一起使用, 可以使用模板的批量复制和导入 下面举一个例子 我们先写一个需要导入模块的html tp1 {% extends 'master.html' %} {% bl ...
- Etcd的基本使用
etcd 是 CoreOS 团队于 2013 年 6 月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库,基于 Go 语言实现,内部采用 raft 协议作为一致性算法. ...