HTTP报文格式以及状态码

请求报文

在这里插入图片描述
1,请求行

由3部分组成,分别为:请求方法、URL以及协议版本,之间由空格分隔

请求方法包括GET、HEAD、PUT、POST、TRACE、OPTIONS、DELETE以及扩展方法,当然并不是所有的服务器都实现了所有的方法,部分方法即便支持,处于安全性的考虑也是不可用的

协议版本的格式为:HTTP/主版本号.次版本号,常用的有HTTP/1.0和HTTP/1.1

2,请求头部

请求头部为请求报文添加了一些附加信息,由“名/值”对组成,每行一对,名和值之间使用冒号分隔

接受请求的服务器地址,可以是IP:端口号,也可以是域名

User-Agent:发送请求的应用程序名称

Connection:指定与连接相关的属性,Connection:Keep-Alive

Accept-Charset:通知服务端可以发送的编码格式

Accept-Encoding:通知服务端可以发送的数据压缩格式

Accept-Language:通知服务端可以发送的语言

请求头部的最后会有一个空行,表示请求头部结束,接下来为请求正文,这一行非常重要,必不可少

3,请求正文

可选部分,比如GET请求就没有请求正文


响应报文

HTTP响应报文主要由状态行、响应头部、响应正文3部分组成,这里最重要的就是状态码了,主要讲讲状态码

大概意思:

1 .(信息性状态码): 接收的请求正在执行
2.(成功状态码):请求正常处理完毕
3.(重定向状态码):需要附加操作以完成请求
4.(客户端错误状态码): 服务器无法处理请求
5.(服务器错误状态码): 服务器处理请求出错

常见状态码

200:响应成功

301:永久重定向,搜索引擎将删除源地址,保留重定向地址

302:暂时重定向,重定向地址由响应头中的Location属性指定(JSP中Forward和Redirect之间的区别)
由于搜索引擎的判定问题,较为复杂的URL容易被其它网站使用更为精简的URL及302重定向劫持

304:缓存文件并未过期,还可继续使用,无需再次从服务端获取

400:客户端请求有语法错误,不能被服务器识别

403;服务器接收到请求,但是拒绝提供服务(认证失败)

404;请求资源不存在

499:客户端发起请求后,一段时间内没有收到代理服务器的应答,导致连接失败
有两种可能:

  1. 代理服务器认为客户端发起的请求过于危险,所以主动给断了
  2. 代理服务器实在么得办法连接到其他服务,导致timeout

500:服务器内部错误

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HTTP(Hypertext Transfer Protocol)是一种应用层协议,它是在计算机网络中传输超文本(Hypertext)的标准,是Web数据通信的基础。HTTP工作的过程如下: 1. 建立连接:客户端通过TCP连接向服务器发起请求。 2. 发送请求:客户端发送HTTP请求消息给服务器,请求消息包括请求方法、请求URI、协议版本、请求头部信息以及请求数据等内容。 3. 处理请求:服务器接收到客户端的请求消息后,根据请求消息中的URI和协议版本等信息,解析出客户端需要的资源,并进行相应的处理。 4. 发送响应:服务器将处理结果封装成HTTP响应消息发送给客户端,响应消息包括协议版本、状态码状态码描述、响应头部信息以及响应数据等内容。 5. 关闭连接:HTTP是一种无状态协议,处理完一次请求后,服务器和客户端之间的连接就会断开。 HTTP报文格式包括请求报文和响应报文两种类型: 1. 请求报文:请求报文由请求行、请求头和请求体组成,其中请求行包括请求方法、请求URI和协议版本三部分;请求头部包括多个请求头字段,用于描述客户端请求的附加信息;请求体包括请求数据,用于向服务器传递数据。 2. 响应报文:响应报文由状态行、响应头和响应体组成,其中状态行包括协议版本、状态码状态码描述三部分;响应头部包括多个响应头字段,用于描述服务器响应的附加信息;响应体包括响应数据,用于向客户端返回数据。 HTTP的工作原理是基于请求-响应模式的,客户端向服务器发送请求,服务器处理请求并返回响应,然后连接就断开了。HTTP使用TCP作为传输协议,它通过传输层提供可靠的数据传输,同时通过应用层提供HTTP协议的功能。HTTP协议使用请求-响应模式,客户端发送请求消息给服务器,服务器接收请求消息后,进行相应的处理,然后将处理结果封装成HTTP响应消息发送给客户端。在HTTP协议中,客户端和服务器都可以发送请求和响应消息,但通常情况下,客户端发送请求消息,服务器发送响应消息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值