Web应用程序状态管理 (1)

我们已经知道HTTP定义的事务处理由四个部分组成:
1. 客户端和服务器端建立连接;
2. 客户端发送HTTP请求;
3. 服务器端接受客户端的HTTP请求,生成HTTP响应回发;
4. 服务器关闭连接。客户端解析回发响应,恢复页面。

通过这些步骤我们可以知道HTTP协议使用的是无状态的连接。客户端浏览器与服务器建立连接、发出请求、得到响应、然后关闭连接。换句话说,连接只针对一个请求/响应。由于连接不会持久保留,所以容器认不出第二个请求的客户与做前一个请求的客户是否为同一个人。对容器而言,每一个请求都来自于一个新的客户。
某些Web应用中是不需要记录客户端信息的。例如:一个网上书店的书籍目录,不需要维护客户端的状态信息,客户只需要浏览查看就可以了。但是对于一些客户与服务器交互的Web应用程序。例如:网上书店的购物车就必须保留客户端的状态信息。因为对于客户的每一次向购物车中添加书籍、删除书籍,服务器都要对请求进行追踪以确定是否为同一个人。

在Web编程中提出了几种对Web应用状态管理的方法:
1.隐藏字段
2.Cookie
3.Session
4.URL重写

学习的重点在Cookie和Session。隐藏字段和URL就做简单的介绍。

表单隐藏字段:

1:对用户在网站上的访问进行会话跟踪。
2:为服务器端程序提供预定义的输入。
3:存储动态产生的页面上下文信息。

不足的地方是这种方法不安全,可以在查看源代码中看到。

隐藏字段原理图

URL重写:只有在Cookie禁用时使用。

Session对象的正常使用要依赖于Cookie
URL地址重写能够取得置于Cookie中的会话,并把会话ID附加到访问应用的各个URL最后。
URL重写方法:
response.encodeURL()
response.encodeRedirectURL(URL);
URL重写是容器自动完成的,但需要我们对URL进行编码才有效

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值