您的位置:首页 > 理论基础 > 计算机网络

http协议里面session的管理

2006-09-22 16:19 323 查看


[b]
Problem



[/b]
http 协议是无状态的,每个GET 请求,都会进行以下三步:

1.打开一个与web 服务器的连接

2.下载相关数据

3.关闭 连接

对于一个嵌套图片或frame 这样的的多文档组成的页面来说,这些操作是相当耗时的,嵌套的每个页面和页面上的图片都要与服务器进行一次单独请求.

HTTP 1.1

http1.1 将试图解决以下条件下产生的问题:

1.一个连接一直保持打开状态

2.同一浏览器的请求可能只用一个连接

3.一个连接将自动关闭,如果一段时间不处于活动状态

4.同样的一个请求可能被多个页面重复发送

5.Session 管理的问题不能解决

Session management

应用程序状态维持

分布式应用程序的每个分布组件将维持一个状态

web 应用程序期望的的状态

典型的web 应用,比如购物车,服务器端,很希望有张可以维持到支付时用的物品清单

web 对持久状态支持的几乎疲乏

Stateful server(持久状态的服务器)

在一个 c/s 的应用中,服务器端状态的信息



Stateless server(无状态服务器)

在一个 c/s 的应用中,服务器端状态的信息



Static Web documents(静态web文档)

两边都不需要维持状态.http1.0 就是这样设计的



CGI Applications

CGI 应用程序运行时状态是随HTTP session 的变化

CGI应用程序的生命周期是随http session 的周期



Web Applications

状态的维持要通过CGI 应用

浏览器要维护一个状态信息

浏览器不能保存服务器的所有状态信息,他只保存或者 发送一个值给服务器

浏览器保存或者发送个服务器的值不能太敏感,不能是认证信息或认证数字



State information(状态信息)

浏览器可以将状态信息保存到:

Cookies

Hidden form fields

URL rewriting

Challenge/response

未完...

来自:http://jan.netcomp.monash.edu.au/ecommerce/session.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: