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

HTTP请求报文和响应响应结构

2016-04-22 22:14 447 查看
请求报文

客户端发送一个HTTP请求到服务器的请求消息包括以下格式:请求行(request line)、请求头部(header)、空行和请求数据四个部分组成



请求行(request-line):(GET /homepage.html HTTP/1.1)

请求方法(GET/POST)

请求资源路径(/homepage.html)

协议类型和版本(HTTP/1.1)

请求头部(header):若干消息头

content-teyp=text/html

Accept-Language: zh-cn,zh;q=0.5

Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7

Accept-Encoding: gzip, deflate

User-Agent: Mozilla/5.0 (compatible; 域名)

Host: www.baidu.com

Connection: Keep-Alive

空行(blank-line):

最后一个请求头之后是一个空行,分隔请求头

请求数据:消息体

这个部分不在GET方法中使用,在POST方法中使用。POST方法适用于需要客户填写表单的场合。与请求数据相关的最常使用的请求头是Content-Type和Content-Length。

响应报文

HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行、响应包体。



状态行(status-line):HTTP/1.1 200 OK(CRLF)

协议和版本(HTTP/1.1)

状态码(200)

状态码的描述(OK(CRLF))

消息包头:(header)

和请求报文header一样

空行(blank-line):

和请求报文空行一样

响应包体:(body)

返回的数据

ps: 状态码

1xx:表示服务器已接收了客户端请求,客户端可继续发送请求;

2xx:表示服务器已成功接收到请求并进行处理;

3xx:表示服务器要求客户端重定向;

4xx:表示客户端的请求有非法内容;

5xx:表示服务器未能正常处理客户端的请求而出现意外错误;

常见状态码:

200 OK:客户端请求成功。

400 Bad Request:客户端请求有语法错误,不能被服务器所理解。

401 Unauthorized:请求未经授权,这个状态代码必须和WW-Authenticate报头域一起使用。

403 Forbidden:服务器收到请求,但是拒绝提供服务。

404 Not Found:请求资源不存在,举个例子:输入了错误的URL。

500 Internal Server Error:服务器发生不可预期的错误。

503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: