Cookie的作用

转自http://www.cnblogs.com/weifengxiyu/p/5529969.html


Cookie是用于维持服务端会话状态的,通常由服务端写入,在后续请求中,供服务端读取。


HTTP请求,Cookie的使用过程

1、server通过HTTP Response中的"Set-Cookie: header"把cookie发送给client

2、client把cookie通过HTTP Request 中的“Cookie: header”发送给server

3、每次HTTP请求,Cookie都会被发送。

http请求发送cookies的条件:

1、本地已经缓存有cookies

2、根据请求的URL来匹配cookies的domain、path属性,如果都符合才会发送。

举个例子:访问www.baidu.com时,就不发送www.qq.com的cookies.

Cookies查看与存放路径

cookies查看:

大家可以使用抓包工具,这种工具就不多话,网上搜索出很多。使用这些工具中可以清晰的看到Http Request 中的Cookie, 和Http Response中的cookie

cookies存放路径:

这里以iOS客户端请求为例:

客户端请求后,cookies会保存在App的沙盒下:

这是我做应用的沙盒路径:/Users/a-hing/Library/Developer/CoreSimulator/Devices/FECA1CCE-4F9D-42B7-AC84-EEB94171E37C/data/Containers/Data/Application/79CEED3E-F7D9-4589-BEA5-44E1345CA71A/Library/cookes

大家可以去到自己应用的沙盒路径下,打开cookies看看里面的内容。

网站的登陆与App的自动登陆原理:

用户在连接服务器时,服务器生成一个唯一的SessionID 。而SessionID这一数据则是保存到客户端,

用Cookie保存的,用户提交页面时,会将 SessionID提交到服务器端,来存取Session数据。


Cookie cookie = new Cookie("mycookie"+cookieNo, String.valueOf(cookieNo));

两个String串组成cookies。


你可能感兴趣的:(Cookie的作用)