第三章:http报文

第三章:http报文


引言

如果说http是因特网的信使,那么http报文就是它用来搬东西的包裹了。

本章内容

1、报文是如何流动的
2、http报文的三个组成部分(起始行、首部和实体的主体部分)
3、请求和响应报文之间的区别
4、请求报文支持的各种功能
5、响应报文返回的状态码
6、各种各样的http首部都是做什么用的

报文的组成部分

http报文是简单的格式化数据块

报文组成部分

起始行(对报文的描述)
首部(属性块)
数据主体(可选部分)


起始行和首部都是由行分隔的ASCII文本(每行都是以一个由两个字符组成的行终止序列为结束,其中包含一个回车符和一个换行符,
可以写作CRLF),报文主体是可选的,主体可以是文本或二进制数据也可以为空。

http报文可以分为请求报文和响应报文

请求报文

<method> <request-url> <version>
<headers>

<entity-body>

响应报文

<version> <status> <resion-phrase>
<headers>

<entity-body>

常用的http请求方法

GET     从服务器获取资源
DELETE  从服务器上删除资源
POST    向服务器发送需要的数据
PUT     将请求的主体部分存储到服务器上
HEAD    只从服务器获取资源的首部
TRACE   对可能经过代理服务器传送到服务器上去的报文进行追踪
OPTIONS 决定可以在服务器上执行哪些方法

安全方法

http定义了一组被称作安全方法的方法。GET方法和HEAD方法被认为是安全方法,这就意味着使用get和head方法对服务器资源没有任何影响。
实际上所有方法中只有post方法不是安全幂等方法。

get和put方法是对应的,put用于向服务器存储资源。
其实不用将post方法和put方法区分的太清楚。
post用于向服务器发送数据,put用于向服务器上的资源(例如文件)中存储数据。

状态码分类

100~199            信息提示
200~299        成功
300~399        重定向
400~499        客户端错误
500~599        服务器错误

常见的错误码

400             客户端发送了一个错误的请求
403             forbidden,请求被服务器拒绝
404             not found,请求地址不存在
405             method not allowed,请求的方法不被支持

500             internal server error
502             bad gateway
504             gateway timeout

首部

首部我自己喜欢称作为请求头/响应头

首部分类

通用首部:既可以出现在请求报文也可以出现在响应报文中
请求首部:提供更多有关请求的信息
响应报文:提供更多有关响应的信息
实体首部:描述主体的长度和内容,或者资源自身信息
扩展首部:自定义规范之外的首部

实体的主体部分:实体的主体是http报文的负荷,这部分才是http真正要传输的内容。

总结

清楚http报文的组成部分和报文分类,以及请求方法和常用首部设置,以及主体部分的传输。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值