动力节点首页 全国咨询热线:400-8080-105

绑定手机号,登录
手机号

验证码

微信登录
手机号登录
手机号

验证码

30天自动登录
微信登录与注册
微信扫码登录与注册

扫码关注微信公众号完成登录与注册
手机号登录
首页 > 文章

全面解析Cookie技术

06-11 15:51 435浏览
举报 T字号
  • 大字
  • 中字
  • 小字

Cookie是客户端技术,程序把每个用户的数据以cookie的形式写给用户各自的浏览器。当用户使用浏览器再去访问服务器中的web资源时,就会带着各自的数据去。这样,web资源处理的就是用户各自的数据了。由于cookie是由客户端浏览器保存和携带的,所以称之为客户端技术。

1.Cookie的工作流程

1)servlet创建cookie,保存少量数据,发送浏览器。

2)浏览器获得服务器发送的cookie数据,将自动的保存到浏览器端。

3)下次访问时,浏览器将自动携带cookie数据发送给服务器。

2.Cookie特点

1)每一个cookie文件大小:4kb , 如果超过4kb浏览器不识别

2)一个web站点(web项目):发送20个

3)一个浏览器保存总大小:300个

4)cookie 不安全,可能泄露用户信息。浏览器支持禁用cookie操作。

5) 默认情况生命周期:与浏览器会话一样,当浏览器关闭时cookie销毁的。---临时cookie

3.Cookie操作

操作cookie:

  1)创建cookie:new Cookie(name,value)
  2)发送cookie到浏览器:HttpServletResponse.addCookie(Cookie)
  3)servlet接收cookie:HttpServletRequest.getCookies() 浏览器发送的所有cookie

cookie API

    getName() 获得名称,cookie中的key
    getValue() 获得值,cookie中的value
  setValue(java.lang.String newValue)  设置内容,用于修改key对应的value值。
  setMaxAge(int expiry) 设置有效时间【】
  setPath(java.lang.String uri)  设置路径【】  
  setDomain(java.lang.String pattern) 设置域名 , 一般无效,有浏览器自动设置,setDomain(".zyh.com")
    www.zyh.com / bbs.zyh.com 都可以访问
    a.b.zyh.com无法访问
    作用:设置cookie的作用范围,域名+路径在一起就构成了cookie的作用范围,上面单独设置的setPath有用,是因为有浏览器自动设置该域名属性,但是我们必须知道有这么个属性进行域名设置的
  isHttpOnly()  是否只是http协议使用。只能servlet的通过getCookies()获得,javascript不能获得。
  setComment(java.lang.String purpose) (了解)  //对该cookie进行描述的信息(说明作用),浏览器显示cookie信息时能看到
  setSecure(boolean flag) (了解)  是否使用安全传输协议。为true时,只有当是https请求连接时cookie才会发送给服务器端,而http时不会,但是服务端还是可以发送给浏览端的。
  setVersion(int v) (了解)  参数为0(传统Netscape cookie规范编译)或1(RFC 2109规范编译)。

注意事项:cookie不能发送中文,如果要发送中文,就需要进行特别处理。

2人推荐
共同学习,写下你的评论
0条评论
代码小兵498
程序员代码小兵498

153篇文章贡献528999字

相关课程 更多>

作者相关文章更多>

推荐相关文章更多>

JavaWeb的3大组件

代码小兵49806-11 15:28

全面解析Cookie技术

代码小兵49806-11 15:51

浅谈JavaWeb架构演变

代码小兵49806-11 16:22

探讨Web开发中的Session存储与管理

代码小兵51603-29 17:28

JavaScript基础知识

 04-06 20:49

发评论

举报

0/150

取消