HTTP -> LV1

1)http过程

客户端向服务器发送http请求,服务器会在http响应中回送所请求的数据。


2)MIME类型

web服务器会为http相应数据加MIME类型,浏览器会根据相应数据中的MIME类型来决定如何处理该数据。

MIME类型包括content-type和content-length,content-type由一个主要的对象类型和一个特定的子类型组成,中间由/分割,MIME类型有数百个,例如:

HTML格式; text/html

jpeg格式:image/jpeg


3)URI(标志地址或名称)

每个web服务器资源都要一个名字,这样客户端就可以根据需求来找自己需要的web服务器了,服务器资源名被称为统一资源标识符(URI),URI就像每家每户的居住地址一样,是一种独一无二的定位。

URI有两种形式:URL和URN

URL:统一资源定位符(是一个地址),是资源标识符最常见的形式,URL描述了一台特定服务器上某资源的特定位置,URL就像快递的地址一样,精确,固定。

URN:URI的第二种形式就是URN(统一资源名:相当于一个人的身份证,独一无二),通过URN,还可以用同一个名字通过多种网络访问协议来访问资源。使用URN可以在不知道其网络位置和访问方式的情况下讨论该资源。

URI可以被分为URL、URN或两者的组合。


4)请求方法

每次http请求报文都会包含一个请求方法,这个方法会告诉服务器要执行什么动作。

常见的五种http方法

GET:从服务器向客户端发送命名资源

PUT:将来自客户端的数据存储到一个命名的服务器资源中

DELETE:从服务器删除指定命名资源

POST:将客户端数据发送到一个服务器网关应用程序

HEAD:仅发送命名资源响应中的HTTP首部


5)状态码

五大类:

1xx:指示信息--表示请求已接收,继续处理。

2xx:成功--表示请求已被成功接收、理解、接受。

3xx:重定向(请求资源已被移走)--要完成请求必须进行更进一步的操作。

4xx:客户端错误--请求有语法错误或请求无法实现。(由于浏览器发送的东西服务器无法处理)

5xx:服务器端错误--服务器未能实现合法的请求。(浏览器发送有效请求,但服务器自身出错)

常见的状态码:

200 OK:客户端请求成功。

400 Bad Request:客户端请求有语法错误,不能被服务器所理解。

401 Unauthorized:请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用。

403 Forbidden:服务器收到请求,但是拒绝提供服务。

404 Not Found:请求资源不存在,举个例子:输入了错误的URL。

500 Internal Server Error:服务器发生不可预期的错误。

503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常,举个例子:HTTP/1.1 200 OK(CRLF)。


6)一次常规的http请求构成(粗糙的)

第一步:浏览器从URL中解析出服务器的主机名(域名)

第二步:浏览器将服务器的主机名转换成服务器的IP地址

第三步:浏览器将端口号(如果有的话)从URL中解析出来

第四步:浏览器建立一条与Web服务器的TCP连接

第五步:浏览器向服务器发送一条HTTP请求报文

第六步:服务器向浏览器回送一条HTTP相应报文

第七步:关闭连接,浏览器根据MIME类型进行相应的渲染动作

7)url非安全字符的转义

url转移表


8)http报文

无论是客户端发给服务器的请求报文,还是服务器返回给客户端的响应报文,都由三部分组成:

1:对报文描述的起始行

所有的http报文都以一个起始行开始,请求报文的起始行说明客户端要服务器做什么,响应报文的起始行反馈了结果

2:包含属性的首部

向请求或者响应 报文 中添加了一些附加信息

3:以及可选的、包含数据的主体部分

http要传输的内容,http报文可以承载很多类型的数字数据:图片、视频、HTML文档、软件应用程序、信用卡事物、电子邮件等。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,026评论 19 139
  • 第一章、HTTP概述1、Web浏览器、服务器和相关的Web应用程序都是通过HTTP相互通信的,HTTP是现代全球因...
    横冲直撞666阅读 660评论 0 1
  • 本篇文章篇幅比较长,先来个思维导图预览一下。 一、概述 1.计算机网络体系结构分层 2.TCP/IP 通信传输流 ...
    涤生_Woo阅读 55,282评论 24 557
  • (本文参考课本是《HTTP权威指南》,文中的书写结构是根据自己的阅读理解的个人思路,如有不懂可以自行参考原书) 第...
    Andrew_bao阅读 568评论 1 3
  • 暴雪飞舞满天, 寒风呼啸刺耳, 冬日里,铁路人依然在坚守。 在漫长的铁道线上, 在雪花覆盖的站台上, 有你有我还有...
    小橡皮树阅读 437评论 0 1