Http协议 (一)

本文详细解析了HTTP协议的基础工作原理,包括TCP连接管理、持久连接的特点及其与非持久连接的区别,同时介绍了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>
     
 
  

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值