http请求报文和相应报文

索引

请求报文

请求行

三部分:请求方法、请求URL(不包括域名),http协议版本

请求方法

get:get方法的请求,请求参数和对应的值跟在URL后面,get方法要求服务器将url定位的资源放在相应报文的数据部分,回送给客户端。弊端就是参数和参数值都暴漏URL中,字符串长度有限制,不超过1024

post:弥补了get方法不足,因为post将传输的数据封装在报文中,数据大小没限制,没有直接暴漏URL中,所以比较私密安全

head:偶尔用到,服务端接受head请求后只返回响应头,而不会发送内容,提高传输效率,如果查看某个页面状态,head非常高效的。

请求头

由键/值组成,每行一对,键和值用冒号分隔":",请求头部告知服务器所有关于客户端请求信息,有:

User-Agent:产生请求的用户代理信息(浏览器信息): Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36等;

Accept:客户端可识别的内容类型列 :text/html,application/xhtml+xml,application/xml;

Accept-Language:客户端可接受的自然语言 - zh-CN,zh;q=0.8,en;q=0.6,id;q=0.4;

Accept-Encoding:客户端可接受的编码压缩格式 - gzip, deflate, sdch, br

Host:请求的主机名,允许多个域名同处一个IP地址,即虚拟主机

connection:连接方式,有close和keep-alive两种。

close:告诉WEB服务器或代理服务器,在完成本次请求的响应后,断开连接

keep-alive:告诉WEB服务器或代理服务器。在完成本次请求的响应后,保持连接,以等待后续请求

Cookie:存储于客户端扩展字段,向同一域名的服务端发送属于该域的cookie - PSTM=1490844191; BIDUPSID=2145FF54639208435F60E1E165379255;

空行

用于进行内容分割,表示请求头到此为止,下一行内容不再是请求头

请求体

请求体包括 请求数据,get没请求体

响应报文

 

http响应有四个部分组成

状态行

格式:HTTP-Version(表示服务器http协议版本) Status-Code(表示服务器发回的响应状态码) Reason-Phrase(表示状态码文本描述) CRLF

状态码有三位数组成,第一个数字定义了响应的类别

1xx:指示信息--表示请求已接收,继续处理。

2xx:成功--表示请求已被成功接收、理解、接受。

3xx:重定向--要完成请求必须进行更进一步的操作。

4xx:客户端错误--请求有语法错误或请求无法实现。

5xx:服务器端错误--服务器未能实现合法的请求。

各类型常见状态代码、状态描述的说明如下:

200 OK:客户端请求成功。

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

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

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

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

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

503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常,举个例子:HTTP/1.1 200 OK(CRLF)。

响应头

和请求报文请求头类似,这些响应头域允许服务器传递不能放在状态行附加信息

erver:包含处理请求的原始服务器的软件信息;

Date:服务器日期;

Content-Type:返回的资源类型 (MIME);

Connection:连接方式;

close:连接已经关闭;

keep-alive:连接已保持,在等待本次连接的后续请求;

Cache-Control:缓存控制;

Expires:设置过期时间;

Set-Cookie:设置 Cookie 信息。

空行

作为内容分割,表示以下不再是响应头的内容

响应体

这个是服务器返回给浏览器的响应信息

 

转载于:https://www.cnblogs.com/guqzhoublog/p/11284376.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值