Http -- 报文
1,报文结构
HTTP协议的请求报文和响应报文的结构基本相同:
1. 起始行(start line):描述请求或响应的基本信息
2. 头部字段集合(header):使用key-value形式更详细的说明报文
3. 消息正文(entity):实际传输的数据,它不一定是纯文本,可以是图片、视频等二进制数据
4. HTTP协议必须有header,可以没有body。而且header之后必须要有一个空行,也就是 “CRLF”,十六 进制的“0D0A”
1.1 请求行(请求报文里的起始行)
描述了客户端想要如何操作服务器端的资源,起始行由三部分构成:
1. 请求方法:标识对资源的操作:GET/POST/PUT
2. 请求目标:通常是一个URI,标记了请求方法要操作的资源
3. 版本号:标识报文使用的HTTP协议版本
通常使用空格分隔,最后用CRLF换行,如 GET / HTTP/1.1
1.2 状态行(响应报文里的起始行)
服务器响应的状态,状态行也是由三部分构成:
1. 版本号:标识报文使用的HTTP协议版本
2. 状态码:三位数,用代码形式标识处理的结果,比如200是成功,500是服务器错误
3. 原因:作为数字状态码补充,是更详细的解释文字,帮助人理解原因
通常也使用空格分隔,最