`
zhengjunwei2007_163.com
  • 浏览: 126494 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

HTTP协议的请求响应模式

    博客分类:
  • WEB
阅读更多

HTTP协议的request/response请求响应模式

 

我们知道HTTP协议是一种无状态的协议,及客户端和服务器端不需要建立持久的链接。客户端和服务器的链接是基于一种请求应答模式。及客户端和服务器建立一个链接,客户端提交一个请求,服务器端收到请求后返回一个响应,然后二者就断开链接。

    这里我们比较熟悉的一个案例是一个多图网页的浏览。

    1。建立连接,客户端发送一个网页请求,服务器端返回一个html页面(这里的页面只是一个纯文本的文本,也就是我们写的html代码),关闭连接;

    2.  浏览器解析html文件,遇到图片标记得到url这时,客户端和服务器在建立连接,客户端发送一个图片请求,服务器返回图片应答,关闭连接。(这里又涉及到无状态定义:对于服务器来说,这次的请求虽然是同一个客户端的请求但是他还是不知道这个是之前的那个客户端是同一个,及对于事务处理没有记忆能力);

    3.  重复2步骤直到html解析完毕;

  

                  客户端连接服务器

         多图网页的解析

     当然以上例子只是一个为了方便我们理解HTTP是无状态协议和HTTP这种请求相应模式的简单例子(基于HTTP 1.0协议),而我们现在的一般使用的HTTP 1.1协议解析网页过程是不同的,在1.1版本中同一个连接可以包含多个请求和对应响应。但是其原理是不变的。如图:

   

    但是需注意的是,服务器的响应次序必须是和客户端请求次序相同的。

   

    注:

      无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

  客户端与服务器进行动态交互的Web应用程序出现之后,HTTP无状态的特性严重阻碍了这些应用程序的实现,毕竟交互是需要承前启后的,简单的购物车程序也要知道用户到底在之前选择了什么商品。于是,两种用于保持HTTP连接状态的技术就应运而生了,一个是Cookie,而另一个则是Session。HTTP本身是一个无状态的连接协议,为了支持客户端与服务器之间的交互,我们就需要通过不同的技术为交互存储状态,而这些不同的技术就是Cookie和Session了。

分享到:
评论

相关推荐

    HTTP协议详解,http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议

    http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。HTTP URL (URL是...

    Java多线程与线程安全实践-基于Http协议的断点续传

    Http协议是一个基于请求-响应模式的协议,客户端发送请求,服务器返回响应。请求和响应的格式都是由Http报文组成的,请求报文包括请求头和请求体,响应报文包括响应头和响应体。在Http请求中,常见的请求方法有GET和...

    MQTT协议原理浅析、协议主要特性

    请求响应模式: 客户端向服务端发送请求,服务端收到请求后,向客户端返回响应 MQTT(Message Queuing Telemetry Transport, 消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议...

    http的具体介绍.doc

    基于请求-响应模式:HTTP协议采用客户端-服务器架构模式,客户端(如浏览器)向服务器发送请求,服务器根据请求的内容进行处理后返回相应的响应。这种请求-响应模式有效分离了应用逻辑,提高了系统的可维护性和扩展...

    CIFS协议 SMB协议

     SMB 一种客户机/服务器、请求/响应协议。通过 SMB 协议,客户端应用程序可以在各种网络环境下读、写服务器上的文件,以及对服务器程序提出服务请求。此外通过 SMB 协议,应用程序可以访问远程服务器端的文件、以及...

    http的概要介绍与分析

    它基于请求-响应模式,即客户端向服务器发送一个请求,服务器返回一个响应。HTTP协议使用TCP/IP作为底层传输协议,确保数据的可靠传输。 HTTP协议的主要组成部分包括请求行、请求头和请求体。请求行包含了请求的...

    设备终端接入协议EDP协议(v1.6版本)很全-.zip

    设备终端接入协议EDP协议(v1.6版本),很详细。 目录 Enhanced Device Protocol(EDP) 1 1 说明 2 2 设备与业务接入模式 2 3 接入流程 3 4 消息格式 3 4.1 消息类型 3 4.2 剩余消息长度 4 4.3 选项 5 4.4 消息体 5...

    lx_http:C语言实现http协议解析

    lx_http一个C语言实现http协议解析模块使用状态机实现的http协议解析拼装模块。支持异步解析。测试及用法test/test.c是测试文件./build.sh./test -husage:test [-h] [--mock] [-s] [-c] [--host] [--port] [--uri] ...

    Ajax开发详解

    B/S请求响应机制所使用的HTTP协议决定其特有的工作机制以及Web开发模式,也决定了其自身的缺陷。 本章在简要介绍HTTP协议的基础上,着重讲述B/S请求响应机制的工作原理、当前几种主流Web开发技术的开发模式,并且...

    2.2_http协议2

    2.2.1 Http协议定义HTTP,Hypertext Transfer Protocol,超文本传输协议HTTP是一个基于“请求与响应”模式的、无状态的应用

    一、浏览器渲染原理(进程、线程)http请求全过程-浏览器输入url整个过程

    1.2 浏览器发送 HTTP 请求的流程(B/S模式)(注意:http协议是基于tcp/ip协议的,http协议是应用层协议,tcp/ip协议是通信层协议,也就是tcp提供的是通信的管道。) 简要来说,很多网站第二次访问能够秒开,是因为...

    HttpClient入门基础教程高清晰PDF.pdf

    前言 HttpClient 的范围 什么是 HttpClient 不能做的 关于翻译 第一章 基础 执行请求 HTTP 请求 ... 协议模式 HttpClient 代理配置 HTTP 连接管理器 连接操作器 管理连接和连接管理器

    基于语义的Web服务请求和响应模式 (2005年)

    但是其对服务的抽象级别比较低,对服务的描述上也不具有表现力,存在着计算机与应用程序在语义上难以互操作的障碍,本文提出了基于语义的Web服务请求和响应模式,并给出了工作模型,对Web服务双方交换的信息内容进行了...

    HTTP协议资料--学习资料

    http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。

    操作系统安全:IIS简介.pptx

    接受指定协议请求,把他们发给IIS处理,然后把响应结果返回给请求方。 服务和程序除了能监听HTTP和HTTPS协议外,还可以监听非HTTP协议,如TCP,可以使用其他技术,如WCF。;HTTP和HTTPS协议监听器—HTTP.sys(HTTP...

    tentacle远程桌面是基于Java canvas的跨平台远程桌面实现,.rar

    它采用了请求/响应模式,通信请求只能由客户端发起,服务端对请求做出应答处理 这种通信模型有一个弊端: HTTP协议无法实现服务器主动向客户端发起消息 这种单向请求的特点,注定了如果服务器有连续的状态变化,...

    外部DMA请求/应答协议

    这里主要讲述4种类型的DMA请求/应答协议。  (1)握手模式  在握手模式下,一个单独的DMA请求信号对应一个DMA应答信号。而且在该模式下,一次DMA操作意味着在DMA操作中的一对或不可分的读和写周期。在DMA操作中...

    设备终端接入协议-EDP.docx

    Enhanced Device Protocol(EDP) 1 1 说明 2 2 设备与业务接入模式 2 3 接入流程 3 4 消息格式 3 4.1 消息类型 3 ...5.1 连接请求 5 ...6.6 命令请求及响应 27 6.7 心跳保持 27 6.8 数据加密 28

    python全栈开发基础+前端+web框架+项目实战视频.zip

    http协议之请求协议 http协议之响应协议1 http协议之响应协议2 css的四种引入方式 css的基本选择器 css的属性选择器和伪类 css的属性操作(一) css的属性操作(二) 外边距和内边距 ....... 3 python全栈开发web框架篇...

    web前端必须掌握的HTTP协议知识

    是用于从WWW服务器传输超文本到本地浏览器的传输协议.HTTP是一个应用层协议,由请求和响应构成,是一个标准的个客户端和服务器模型。 HTTP协议的特点 支持客户/服务器模式 简单快速:客户向服务器请求服务时,只需...

Global site tag (gtag.js) - Google Analytics