您的位置:首页 > 理论基础 > 计算机网络

HTTP请求、响应的报文格式

2017-08-26 23:22 357 查看
HTTP请求:

HTTP请求报文的第一行各个字段之间以一个空格隔开。

方法 URL HTTP版本 回车换行

首部字段(可以是多行)

回车换行

请求实体

HTTP响应:

HTTP版本 状态码 状态码文字描述 回车换行

首部字段(可以是多行)

回车换行

响应主体

关于状态码:

1xx:表示请求收到了,正在处理

2xx:表示请求正常处理完毕,常见的就是200:请求成功,204:请求成功,但无实体返回,使用HEAD方法时会返回该状态码

3xx:请求重定向,比如301永久重定向,302临时重定向,303:see other
在实际上许多浏览器将302视为303响应。


(关于302与303的区别:

303与302有着相同的功能,但是303明确表示客户端应该使用GET获取服务器端的资源。并且HTTP1.1之前的许多浏览器无法正确识别303。我这里讨论的HTTP均基于HTTP1.1。)

4xx:客户端错误代码 比如400:请求报文中存在语法错误,404:页面找不到,403:服务器拒绝浏览器访问请求的那个资源

5xx:5xx系列对于后端开发者来说算是再常见不过的错误了。这表示服务器内部错误。做java EE的就经常见到500这个状态码,以及那一大坨的异常栈。此外还有503:服务器超负载或停机维护

关于首部字段:

首部字段的格式如下

首部字段名:值

首部字段类型分为四种:通用首部字段、请求首部字段、响应首部字段、实体响应字段

HTTP1.1中字段名很多,我只记得几个非HTTP1.1的setCookie、Cookie,其他的就不写了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: