HTTP协议

URI (Uniform Resource Identifiers)统一资源定位符

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。

HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。

HTTP协议工作于客户端-服务端架构上(简称B-S架构)默认端口是80

HTTP三点注意事项:

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

HTTP是媒体独立的:这意味着,只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。客户端以及服务器指定使用适合的MIME-type内容类型。

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

什么是HTTP协议无状态协议?怎么解决HTTP协议无状态协议?

(1)、无状态协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息

(2)、无状态协议解决办法: 通过1、Cookie 2、通过Session会话保存。

HTTP协议是由请求报文和响应报文组成

请求报文格式:

1 请求首行-——》请求方式 请求路径 协议和版本,例如:GET /index.html HTTP/1.1

2 请求头信息——》请求头名称:请求头内容,即为key:value格式,例如:Host:localhost

3 空行——》用来与请求体分隔开

4 请求体——》GET没有请求体,只有POST有请求体。

响应报文格式:

响应首行——》HTTP/1.1 200 OK:响应协议为HTTP1.1, 状态码为200 表示请求成功 OK是对状态码的解释

响应头信息

空行

响应体

HTTP请求方式有哪些?

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

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

GET:用于请求访问已经被URI(统一资源标识符)识别的资源,可以通过URL传参给服务器

POST:用于传输信息给服务器,主要功能与GET方法类似,但一般推荐使用POST方式

PUT:传输文件,报文主体中包含文件内容,保存到对应URI位置

HEAD:获得报文首部,与GET方法类似,只是不返回报文主体,一般用于验证URI是否有效

DELETE:删除文件,与PUT方法相反,删除对应URI位置的文件

OPTIONS:查询响应URI支持的HTTP方法

HTTP协议中http1.0和http1.1的区别?

在http1.0中,当建立连接后,客户端发送一个请求,服务器端返回一个信息后就关闭连接,当浏览器下次请求的时候又要建立连接,显然这种不断建立连接的方式,会造成很多问题。

而http1.1版本允许多个HTTP请求复用一个TCP连接,以加快传输速度。

HTTP常见状态码有哪些?

200:请求成功,浏览器会把响应体内容(通常是html)显示在浏览器中

302:重定向,当响应码为302时,表示服务器要求浏览器重新再发一个请求,服务器会发送一个响应头Location,它指定新请求的URL地址

 

404:请求的资源没有找到,说明客户端错误的请求了不存在的资源(只要是4开头的错误都是客户端的问题)

500:请求资源找到了,但服务器内部出现了错误(只要是5开头的错误都是服务端的问题)

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值