博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HTTP协议中的COOKIE机制简单理解
阅读量:5283 次
发布时间:2019-06-14

本文共 976 字,大约阅读时间需要 3 分钟。

1、为什么会有COOKIE这种机制

首先一种场景, 在一个网站上面, 我发起一次请求,那服务器怎么知道我是谁?是谁发起的这次请求呢, HTTP协议是无状态的协议, 浏览器的每一次请求,服务器都当做一次新请求, 但是在实际应用中我们需要知道这个请求来自于谁,需要查找哪些信息返回给访问者,

这个时候就引入了COOKIE机制, COOKIE机制是什么呢? 其实就是服务器给客户端返回数据的时候,中间加了一个标识, 然后客户端再次请求数据的时候,数据中带上这个标识, 那么服务器接收到请求消息时就知道这个请求来自于谁了(相当于服务器接收到请求时,如果没有带识别码,生成一个识别码给客户端, 如果有识别码,就把这个识别码需要的对应内容返回给客户端)

 

COOKIE主要有哪些字段呢:

1、name COOKIE的名字

2、value COOKIE对应的值

3、domain 域名 就是说这个COOKIE对应哪一个域名有效

4、path 路径 , COOKIE对应的哪一个路径才会有效

5、expires/Max-Age 字段为此cookie超时时间。若设置其值为一个时间,那么当到达此时间后,此cookie失效。不设置的话默认值是Session,意思是cookie会和session一起失效。当浏览器关闭(不是浏览器标签页,而是整个浏览器) 后,此cookie失效。

 

举一个例子,看看我们的浏览器怎么样去决定要带哪些COOKIE值,假设浏览器有如下COOKIE值

Set-Cookie: id=123456789; expires=Wed, 25-Apr-2018 06:04:48 GMT; domain = 119.29.100.135 path=/pro/

 

如下四个请求:

1、http://119.29.100.138:/pro/

2、http://119.29.100.135:/pro/

3、http://119.29.100.135:/pro/test/

4、http://119.29.100.135:/pro11/

 

结果:

2、3访问的时候会带上对应的COOKIE id =123456789

1、不会带上因为域名不对

4、不会带上因为路径不对

转载于:https://www.cnblogs.com/ymwang/p/8658607.html

你可能感兴趣的文章
ORACLE查看并修改最大连接数
查看>>
box-flex不均分问题
查看>>
Python--GIL 详解
查看>>
Oracle数据导入Mysql中
查看>>
BZOJ-4424 &&CodeForces-19E Fairy DP+dfs (Link-Cut-Tree可A)
查看>>
MongoDB学习笔记——聚合操作之group,distinct,count
查看>>
大道至简读后感(第四章)
查看>>
IDA IDC Tutorials: Additional Auto-Commenting
查看>>
k8s-存储卷1-十二
查看>>
在Android中Intent的概念及应用(二)——Intent过滤器相关选项
查看>>
前端面试题(4)iframe有哪些优点?iframe缺点是什么?
查看>>
第十六章 多态性(一)
查看>>
INSERT IGNORE INTO / REPLACE INTO
查看>>
Python数据类型-布尔/数字/字符串/列表/元组/字典/集合
查看>>
类的无参方法
查看>>
【刷题】SPOJ 705 SUBST1 - New Distinct Substrings
查看>>
IEEE 754浮点数表示标准
查看>>
declare 结构用来设定一段代码的执行指令
查看>>
图解算法读书笔记
查看>>
调试学习笔记
查看>>