美文网首页
什么是HTTP ?

什么是HTTP ?

作者: HappyZZD | 来源:发表于2017-05-18 18:13 被阅读0次

HTTP 协议简介

HTTP 是超文本传输协议 (Hyper Text Transfer Protocol)的缩写,用于 WWW 服务

HTTP的工作原理

HTTP是一个面向事务的客户服务器协议.尽管 HTTP使用TCP 作为底层传输协议,但是HTTP 协议是无状态的,也就是说,每个事务都是独立的进行处理.在浏览器和服务器之间的请求和响应的交互,必须遵循 HTTP 规定的格式和规则。

1 浏览器分析待访问页面的 URL 并向本地 DNS 服务器请求 IP 地解析;

2 DNS 服务器解析出该 HTTP 服务器的 IP 地址并将 IP 地址返回给浏览器;

3 浏览器与 HTTP 服务器建立 TCP 连接,若连接成功,则进入下一步;

4 浏览器向 HTTP 服务器发出请求报文 (含 GET 信息),请求访问服务器的指定页面;

5 服务器作出响应,将浏览器要访问的页面发送给浏览器,在页面传输过程中,浏览器会打开多个端口,与服务器建立多个连接;

6 释放 TCP 连接;

7 浏览器收到页面并显示给用户。

HTTP 报文格式

HTTP 有两类报文:从客户到服务器的请求报文和从服务器到客户的响应报文.

显示了两种报文的结构。

请求报文(请求行 首部行[HTTP头],实体 )

  1. 请求行
    • 方法字段,最常用的方法为 “GET”,表示请求读取一个万维网的页面。常用的方法还有 “HEAD(指读取页面的首部)”和“POST(请求接受所附加的信息);
    • URL 字段为主机上的文件名,这时因为在建立 TCP 连接时已经有了主机名;
    • 版本字段说明所使用的 HTTP 协议的版本,一般为 “HTTP/1.1”。
  2. 首部行
    • 第一个字段等同请求行的第三字段;
    • 第二个字段一般为“200”,表示一切正常,状态码共有41种,常用的有:301 (网站已转移),400(服务器无法理解请求报文),404(服务器没有锁请求的对象)等;
    • 第三个字段时解释状态码的短语。
    • 根据具体情况,首部行的行数是可变的。请求首部有 Accept 字段,其值表示浏览器,可以接受何种类型的媒体;Accept-language,其值表示浏览器使用的语言;User-agent 表明可用的浏览器类型。响应首部中有 Date、Server、Content-Type、Content-Length 等字段。在请求首部和响应首部中都有 Connection 字段,其值为 Keep-Alive 或 Close,表示服务器在传送完所请求的对象后是保持连接或关闭连接
  3. 实体
    • 若请求报文中使用 “GET”方法,首部行后面没有实体主体.
    • 当使用"POST"方法,附加的信息被填写在实体部分.
    • 在相应报文中 ,实体主部分为服务器发给客户的对象.

相关文章

  • 【HTTP】什么是HTTP Referer?

    什么是Referer?Referer的作用?空Referer是怎么回事? https://www.sojson.c...

  • 什么是HTTP ?

    HTTP 协议简介 HTTP 是超文本传输协议 (Hyper Text Transfer Protocol)的缩写...

  • 什么是HTTP?

    http是计算机通过网络进行通信的规则。 http是一种无状态的协议,它不建立持久的连接,处理过程是没有记忆的。 ...

  • 什么是 HTTP?

    HTTP[https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Ov...

  • 什么是【HTTP】

    HTTP(Hyper Text Transfer Protocol)是超文本传输协议的缩写,是互联网上应用最为广泛...

  • HTTP之一:什么是HTTP

    本文仅供笔者平日学习笔记之用,侵删原文:https://mp.weixin.qq.com/s/wZONAYSlku...

  • 什么是http协议

    大家好,我是IT修真院深圳分院第5期学员,一枚正直善良的JAVA程序员。 今天给大家分享一下,修真院官网JAVA任...

  • 什么是HTTP协议?

    视频 https://v.qq.com/x/page/r05089xvzqe.html PPT https://g...

  • HTTP - 什么是Etag?

    什么是Etag? 当发送一个服务器请求时,浏览器首先会进行缓存过期判断。浏览器根据缓存过期时间判断缓存文件是否过期...

  • 什么是HTTP Headers

    什么是HTTP Headers HTTP是“Hypertext Transfer Protocol”的所写,整个万...

网友评论

      本文标题:什么是HTTP ?

      本文链接:https://www.haomeiwen.com/subject/whzsxxtx.html