0
点赞
收藏
分享

微信扫一扫

HTTP协议

东方小不点 2022-01-28 阅读 221

HTTP概念

   HTTP协议(即超文本传输协议HyperText Transfer Protocol),它是基于TCP/IP协议的应用层传输协议. 规定了客户端一次请求, 服务端一次应答后主动断开连接的连接方式

HTTP基本原则

        1.基于请求应答模型, 就是有人敲门(请求) 然后你打开了门(应答)这种关系.

        2.一次请求对应一次应答.

        3.只能由客户端发出请求, 服务器接收请求并给出应答.

HTTP详细内容

HTTP请求 Request

典型的HTTP请求结构: 一个请求行   若干请求头   一个空行   实体内容

        1.一个请求行

        1)请求方式: HTTP协议中规定了7中请求方式 (GET、POST、HEAD、OPTIONS、PUT、DELETE和TARCE), 真正运用到实际只有GET和POST两种请求方式.

        2)请求的资源 例如: /news3/1.html

        3)HTTP协议的版本: http 1.0 --->   严格一次请求一次应答就断开连接

                               http  1.1 --->  允许保留连接一段时间,供应html连接的静态资源使用

 POST就是请求方式        /news3/1.html就是请求的资源        HTTP/1.1就是协议的版本

        2.若干请求头

        Accept:  text/html,image/*        -- 通知服务器当前浏览器可以接收哪些格式的数据

        Accept-Charset:  ISO-8859-1        -- 浏览器可以接收的字符集编码

        Accept-Encoding:  gzip,compress        -- 浏览器可以接收的压缩格式

        Accept-Language:  en-us, zh-cn        -- 浏览器接收的语言环境和国际化相关的头

        Host:  www.baidu.com:80        -- 需要访问的虚拟主机的名称

        If-Modified_since:  Fri, 28 Jan 2022 09:09:56 GMT        -- 缓存机制相关的头

        Date:  Fri, 28 Jan 2022 09:09:56 GMT        -- 当前发送请求的时间

         3.空行: 作用 --- 分割请求头和实体内容

        4.请求实体:  实体内容中为需要传递给服务器的内容数据

                POST请求会将表单参数存入请求实体中

                GET请求会将表单中参数拼接在URL后面

HTTP响应 Respond

典型的HTTP响应结构: 一个状态行   若干响应头   一个空行   实体内容

        1.一个状态行

        1) 遵循的协议号

        2) 状态码:  是3位的十进制数,通过不同的状态码表示服务器对请求的不同处理结果。响应状态码分为5类。

状态码
100~199表示接收的请求正在处理
200~299表示成功接收请求并已完成整个处理过程,常用 200
300~399

需要进行附加操作已完成请求. 例如: 请求的资源已移动一个新地址

常用302 -- 表示请求重定向, 304 -- 表示通知浏览器使用缓存中的资源, 307 -- 表示通知浏览器使用缓存中的资源

400~499客户端的请求有错误, 常用 404
500~599服务端出现错误, 常用 500

        3) 状态描述: OK, Not Found......

 

         2.若干响应头

        1) Location:  http://www.baidu.com   配合302使用实现请求重定向

        2) refresh 定时刷新

        3) Set-Cookie

        3.空行

        4.应答实体

举报

相关推荐

0 条评论