1 / 5
文档名称:

http无状态.doc

格式:doc   页数:5页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

http无状态.doc

上传人:xxj16588 2016/6/12 文件大小:0 KB

下载得到文件列表

http无状态.doc

相关文档

文档介绍

文档介绍:http 无状态 http 协议无状态是什么意思?让 web 应用有状态的机制? 2013-08-24 00:03 黎约践踏 v厐a因分类: 网站使用| 浏览 1950 次网络分享到: 2013-08-24 00:13 提问者采纳 http 无状态还是 web 应用无状态我们通常说的 web 应用程序的无状态性的含义是什么呢? 直观的说, “每次的请求都是独立的,它的执行情况和结果与前面的请求和之后的请求是无直接关系的, 它不会受前面的请求应答情况直接影响, 也不会直接影响后面的请求应答情况”要明白, 这句话的含义是指在说明, http 协议作为技术背景的 web 应用程序请求——应答模式是无状态的, 这个事实基本不会发生改变,也不会因为加入 cookies 、 session 机制而变成有状态的。要明白, 这种前后因果关系:“我们要实现的是一种 web 应用, 实现这种应用的协议我们选择了 http 这种本质上是无状态的通信协议。但是事实上,我们需要我们的 web 应用是有状态的。所以我们加入了 cookies 、 session 等机制去实现由状态的 web 应用”。所以我们可以这么理解: Web 应用=http 协议+session 、 cookies 等状态机制+ 其他辅助的机制。其实,应用程序( 软件通信) 的状态与否是一个非常通用的概念。我们可知, 在网络协议中, 我们称 TCP 为一个有状态的传输层通信协议,而 UDP 则不是; IP 是无状态的。要明白这种状态与否的判定, 是面向你这一层次所指实现的功能——是否由上下文决定——来判定的( 是否受之前的通信过程直接影响、是否直接影响之后的通信过程) IP 层以下的我们就不思考了。我们做一个网络应用,需要使用网络协议。其实按照原理上讲,标准的 TCP/IP 协议提供给我们的网络层协议(FTP, HTTP) 不能直接的被称为应用,因为在实现某种可用的、直接面向用户的应用的时候(如 web 应用, 人们可以上网), 只有 http 协议还是不够的。所以我们可以这么理解。网络标准协议分层中提供给我们的应用层协议, 它更像是一种分类。自然界的应用可能是无穷尽的种类,但是根据他们的特点、传输的特色, 标准的网络协议在传输层( 通用网络协议) 的基础上封装出若干种面向不同种类网络应用的协议。某种角度上讲, 我们想要实现某种可用的网络应用, 直接使用网络协议的传输层给我们提供的接口就可以了(也就是 socket 接口), 但是有时候, 这种方式是有些麻烦的, 所以我们还是根据你要实现的 web 应用, 在已有的标准协议中提供的面向应用分类的协议中进行选择。这样可以免去那些繁琐的、通用的工作。可以看到, 我们实际生活中的有关网络的应用程序, 与标准的网络通信协议提供给我们的应用层协议是没有绝对的对应关系。所以标准的网络通信协议给我们提供的应用层协议, 只是提供给我的一种“建议的”分类。建议你:“如果你要实现这样的应用, 你可以直接使用这个封装协议,而不是 socket 接口”。我们再看看,前面一副图中, 所给我们的关于网络应用层次中的各层次的有无状态情况。可以知道,支持协议(下层)的有无状态,消费协议(上层)的有无状态, 没有直接的关系。还是那句话, 每层协议的有无状态关系到它的本身功能执行的时候的有无状