HTTP详解

 HTTP 的概念和介绍

概念:

          超文本传输协议(Hyper Text Transfer Protocol)

作用:

       规范了浏览器和服务器的数据交互特点:

       简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有 GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于 HTTP 协议简单,使得 HTTP 服务器的程序规模小,因而通信速度很快。

     灵活:HTTP 允许传输任意类型的数据对象。正在传输的类型由 Content-Type 加以标记

     无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

     无状态:HTTP 协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。

 

    支持 B/S 及 C/S 模式。

    HTTP1.1 版本后支持可持续连接

 HTTP 协议之请求格式

  •  请求格式的结构:

        请求行:请求方式、请求的地址和 HTTP 协议版本

        请求头:消息报头,一般用来说明客户端要使用的一些附加信息空行: 位于请求行和请求数据之间,空行是必须的。请求数据:非必须。

         

  •  HTTP 协议之请求方式

根据 HTTP 标准,HTTP 请求可以使用多种请求方法。

HTTP1.0 定义了三种请求方法: GET, POST  HEAD 方法。 

HTTP1.1 新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE CONNECT方法。

GET - 向特定的资源发出请求。

POST - 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。

HEAD- 向服务器索要与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以在不必传输整个响应内容的情况下,就可以获取包含在响应消息头中的元信息。该方法常用于测试超链接的有效性,是否可以访问,以及最近是否更新。

OPTIONS - 返回服务器针对特定资源所支持的HTTP请求方法。也可以利用向Web服务器发送'*'的请求来测试服务器的功能性。
PUT - 向指定资源位置上传其最新内容。
DELETE - 请求服务器删除Request-URI所标识的资源。
TRACE- 回显服务器收到的请求,主要用于测试或诊断。
CONNECT - HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
PATCH - 用来将局部修改应用于某一资源,添加于规范RFC5789。

  •  get 和 post 请求方式的区别:

  get 请求方式:

请求数据会以?的形式隔开拼接在请求头中,不安全,没有请求实体部分。

HTTP 协议虽然没有规定请求数据的大小,但是浏览器对 URL 的长度是有限制的,所以get 请求不能携带大量的数据。

  post 请求方式:

  请求数据在请求实体中进行发送,在URL中看不到具体的请求数据,安全。适合数据量大的数据发送。

 HTTP 协议之响应

  • 响应格式的结构:

  响应行(状态行):HTTP 版本、状态码、状态消息 

  响应头:消息报头,客户端使用的附加信息空行:响应头和响应实体之间的,必须的。

  响应实体:正文,服务器返回给浏览器的信息

  示例:

  

  • HTTP 常见响应状态码含义:

HTTP 状态码共分为 5 种类型:

 

常见状态码:

 

200

OK

//客户端请求成功

400 Bad Request

//客户端请求有语法错误,不能被服务器所理解

401

Unauthorized

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

403

Forbidden

//服务器收到请求,但是拒绝提供服务

404

Not Found

//请求资源不存在,eg:输入了错误的 URL

500

Internal Server Error

//服务器发生不可预期的错误

503 Server Unavailable

//服务器当前不能处理客户端的请求,一段时间后可能恢复正常

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值