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

Http协议 (一)

阅读更多

               HTTP都是以TCP为底层协议。浏览器首先发出请求,与服务器TCP连接。连接后,浏览器和服务都可以使用自己的套接字来访问TCP。浏览器往自己的套接字中发送请求并接受响应,服务器从自己的套接字中接受请求并发出响应。TCP有自己的控制机制,该机制原理如下:每个新的连接开始都以很低的速度传输数据,只要没有堵塞的情况发生,传输的速度会迅速的上升。这个机制称为缓启动 slow start。
  同时,HTTP完全不维护用户的状态信息。该协议为无状态协议。
       HTTP 协议分为HTTP/1.0 和HTTP/1.1,其中HTTP/1.1使用持久连接。
  持久连接和非持久连接的区别。
  非持久连接没发出一个对象后,TCP连接就会关闭。在开一个页面中可能开关了很多个TCP连接,TCP就在服务器和客户端使用了多个TCP缓存区并维护多个变量。由于TCP协议的缓启动,所以非持久地连接中TCP连接多在缓启动中就关闭了。浏览器是使用多个TCP连接读取页面的。持久连接会让TCP连接持续开着,直到HTTP还是回收它,这样一个TCP连接可能发送一个甚至多个页面给用户。
  HTTP内容分为请求消息和响应消息两类。
  HTTP请求消息如下:
       GET /path/aa.html HTTP/1.1
  Host:www.url
  Connection:close
  User-agent:Mozilla/4.0
  Accept-language:zh-cn
      该内容包含了服务器位置,HTTP版本,语言版本。
      HTTP响应内容如下:
       HTTP/1.1   
      Connectlon:
      Date: 
      Server:
  LastNodified:
   ContentLength:
      ContentType:

头内容的状态值如下:
200OK
表示一切正常,凡是2开头的代码表示的都是成功进行中。

404NotFound
表示文件不存在。

403Forbidden
服务器无法满足现在的请求,连接数太多等原因。

401Unauthorized
未认证的请求,通常浏览器接受到这个状态值,就会弹出一个对话框,要求你输入密码。

500InternalServerError
服务器内部错误。

206PartialContent
部分的内容,是断点续传的标准返回码
       <stream></stream>
     
 
  

分享到:
评论
1 楼 ouspec 2007-05-13  
不错的入门帖子。希望这个系列能够完整

相关推荐

    网络协议TCP/IP实验七 HTTP 协议分析实验

    本实验是湘潭大学网络协议课程中的一个环节,旨在通过实践操作加深学生对HTTP协议的理解。实验选取了常见的HTTP协议作为研究对象,通过对HTTP协议的深入剖析,使学生能够掌握HTTP协议的基本原理、报文格式以及其工作...

    HTTP协议详解电子书

    HTTP(超文本传输协议)是互联网上应用最为广泛的一种网络协议,它的设计目的是为了传输数据,并且使数据交换变得简单、高效。HTTP协议是基于TCP/IP通信协议来传输数据的,主要负责客户端(浏览器)与服务器之间的...

    Http协议简介

    超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted ...

    HTTP协议详解(真的很经典)[归类].pdf

    HTTP 协议是一种应用层面的、面向对象的协议,用于分布式超媒体信息系统。它于 1990 年提出,经过多年的发展和完善,目前在 WWW 中使用的是 HTTP/1.0 的第六版,HTTP/1.1 的规范化工作正在进行中。 HTTP 协议的主要...

    http协议doc文档

    http 协议是一种为分布式、合作式、多媒体信息系统服务,面向应用层的协议。它是一种通用的、不分状态(stateless)的协议,除了诸如名称服务和分布对象管理系统之类的超文本用途外,还可以通过扩展它的请求方式、...

    Fiddler是一个http协议调试代理工具

    Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件)。 Fiddler 要比其他的网络调试器要更加简单...

    HTTP协议抓包工具

    HTTP协议是互联网上应用最为广泛的一种网络协议,用于从万维网服务器传输超文本到本地浏览器的传输协议。抓包工具则是网络分析的重要辅助手段,它可以帮助我们查看网络中的数据包,了解网络通信的细节。在学习和研究...

    HTTP协议详解及RFC2616(HTTP)中文版

    HTTP/1.1是HTTP协议的一个重要版本,相比之前的HTTP/1.0,它引入了许多改进和新特性,如持久连接、分块传输编码和更多请求方法(如PUT、DELETE)。 **HTTP请求方法** HTTP协议定义了多种请求方法,常见的有GET、...

    HTTP.rar_HTTP协议_http 协议 中文版_http协议 c_http协议 c++

    HTTP,即超文本传输协议(Hypertext Transfer Protocol),是互联网上应用最为广泛的一种网络协议。它是万维网(WWW)的基础,允许用户从WWW服务器传输超文本文件,也用于其他资源的传输,如FTP、SMTP等。这个...

    HTTP协议学习心得体会[参考].pdf

    HTTP 协议(HyperText Transfer Protocol)是 TCP/IP 协议集中的一个应用层协议,用于定义浏览器和 Web 服务器之间交换数据的过程以及数据本身的格式。HTTP 协议是无状态的,通信过程总是通过浏览器发送请求来启动的...

    http协议详解

    由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 3.灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。 4.无连接:无连接的含义是限制每次连接只处理一个请求。...

    基于C#的HTTP通信协议

    HTTP(超文本传输协议)是互联网上应用最为广泛的一种网络协议,用于从万维网服务器传输超文本到本地浏览器的传输协议。C#是一种由微软公司开发的面向对象的编程语言,广泛应用于Windows平台的应用程序开发,包括...

    一个简单的http协议服务器

    一个简单的http协议服务器,多线程。服务器运行后,用户可以在浏览器中输入http://localhost:8081/webapps/xxx.html进行访问 (xxx.html为服务器端webapps文件夹下已经存放的网页)

    基于HTTP协议的开发接口

    在信息技术领域,HTTP(Hypertext Transfer Protocol)协议是互联网上应用最为广泛的一种网络协议,用于从万维网服务器传输超文本到本地浏览器的传输协议。它是一个基于请求与响应模型的、无状态的、应用层协议。...

    thrift实现http协议案例

    在本案例中,“thrift实现http协议案例”是关于如何利用Thrift来处理HTTP协议通信的一个实践教程。 首先,让我们了解一下Thrift的基本工作原理。Thrift基于接口描述语言(IDL),开发者可以在IDL文件中定义服务接口...

    HTTP.zip_C http协议_HTTP协议_c语言 http_c语言 http_c语言http协议

    HTTP协议是互联网上应用最为广泛的一种网络协议,用于从Web服务器传输超文本到本地浏览器的传输协议。它是一个基于请求与响应模型的、无状态的、应用层协议。本实例将深入探讨如何使用C语言来实现HTTP协议。 首先,...

    netty http协议开发小例子

    - HTTP(超文本传输协议)是互联网上应用最为广泛的一种网络协议,用于从万维网服务器传输超文本到本地浏览器的传输协议。 - HTTP 基于请求与响应模型,由客户端发起请求,服务器端处理并返回响应。 - 请求结构...

    VC发送http协议获取网站内容

    在信息技术领域,网络通信是不可或缺的一部分,而HTTP(超文本传输协议)则是互联网上应用最为广泛的一种网络协议。本文将深入探讨如何利用VC++编程语言来实现HTTP协议,从而获取网站内容,同时结合断点续传和在线...

Global site tag (gtag.js) - Google Analytics