cookies



对于WEB编程人员来说,cookies是非常重要也必需掌握的一种技术。

Cookie技术是一个非常有争议的技术,它在提供有用功能的同时,对网络用户的隐私构成了危害。Cookie是由Web服务器保存在用户浏览器上的小文本文件,它包含用户输入表单的信息(如身份识别号码、密码、用户在Web站点上购物的方式或用户访问该站点的次数)。

WEB技术发展史上,Cookie技术的出现是一个重大的变革。最先是Netscape在它的Netscape Navigator 浏览器中引入了Cookie技术,从那时起,World Wide Web 协会就开始支持Cookie标准。以后又经过微软的大力推广,到现在,绝大多数的浏览器都支持Cookie技术,或者至少兼容Cookie技术的使用。

 

5.1什么是Cookie

按照Netscape官方文档中的定义,Cookie是在HTTP协议下,服务器或脚本维护用户提交的表单信息的一种方式。Cookie是由Web服务器将这些信息保存在用户浏览器上的小文件中。

5.2 Cookie的技术背景

HTTP协议存在一个先天性问题:无连接性。在客户端浏览器向HTTP服务器发送请求,继而HTTP服务器将相应的资源发回给客户端这样一个过程中,无论对于客户端还是服务器,都没有必要记录这个过程,因为每一次请求和响应都是相对独立的,就好像你在超市买东西,超市不需要记得你上次买过什么。

无连接性(无状态对象)在技术实现上比较容易,然而它没有记忆力,不记得同一用户上次做过什么。 然而让网页对象有记忆能力在商业应用中是必要的于是两种用于保持HTTP连接状态的技术就应运而生了,一个是客户端的Cookie,而另一个则是服务器端的Session

  1.有了Cookie在客户端保存状态,服务器在接收到来自客户端浏览器的请求之后,就能够通过分析客户端特有的信息,从而动态生成与该客户端相对应的内容。通常,我们可以从很多网站的登录界面中看到请记住我这样的选项,如果你勾选了它之后再登录,那么在下一次访问该网站的时候就不需要进行重复而繁琐的登录动作了,而这个功能有些就是通过Cookie实现的。
   
   2.
Cookie相对的一个解决方案是Session,它是通过服务器来保持状态的。通常
采用服务器端Session方案保持状态的方案在客户端也需要保存一个标识,同样也不安全,而且Session消耗服务器资源。网站重要的数据还是用表单隐藏域比较好,次要的数据用Cookie
   
程序员可以设定Cookie有效期,一旦超过规定的时间或关闭浏览器该Cookie就会被系统清除。

5.3  cookies的读写

   Cookie常用于记录HTML表单(FORM)提交的数据,HTML DOM(可被各种客户端脚本操纵)、各种服务器端网页(JSP/ASP/PHP/ASP.NET)都支持Cookie读写。具体读写方法可上网查询。

你可能感兴趣的:(JavaWeb)