HTTP 超文本传输协议

HTTP 是一个客户端和服务器端请求和应答的标准。

 

规范把 HTTP请求分为三个部分:状态行、请求头、消息主体。

HTTP 响应与 HTTP 请求相似,HTTP响应也由3个部分构成,分别是:

  • 状态行
  • 响应头(Response Header)
  • 响应正文

 

HTTP 方法(几个常见的):

  • GET:向指定的资源发出“显示”请求。
  • POST:向指定资源提交数据,请求服务器进行处理。
  • PUT:向指定资源位置上传其最新内容
  • CONNECT:HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器
  • OPTION
  • DELETE

 

HTTP 头字段:是指在超文本协议(HTTP)的请求和响应消息中的消息头部分。它们定义了一个超文本传输协议事务中的操作参数。

  • 通用头字段

请求和响应均可使用,用来描述 HTTP消息本身,不用来描述被传输的实体。如:

  • Date
  • Cache-Control
  • 请求头字段
    • Accept:可接受的应答的媒体类型
    • If-Match / If-None-Match:与HTTP方法一起用,使得条件性执行该方法。
    • Host:目标主机名 (域名)
  • 响应头字段
    • Age:生成该 response 以来,服务器估计已经过去了多少时间,该字段用于缓存机制
    • ETag:指定请求变量的当前实体Tag,该字段用来比较来自同一资源的变化的实体。与If-Match/If-None-Match成对使用来实现缓存。
    • Last-Modified
    • Allow: 实体允许哪些方法

 

状态码

所有 HTTP 响应的第一行都是状态行,一次是当前 HTTP版本号,3位数字组成的状态代码,以及描述状态的短语,彼此由空格分隔。

  • 1xx 传输层错误
  • 2xx 成功,资源给到
  • 3xx 成功,资源未给到:

301 Moved Permanently

 被请求的资源已永久移动到新位置;

302 Found

请求的资源现在临时从不同的 URL 响应请求。

303 See Other

对应当前的请求的响应可以在另外一个 URL 上被找到

304 Not Modified

如果客户端发送了一个带条件的 GET请求且该请求已被允许,而文档那个的内容并没有改变,则服务器应当返回这个状态码

  • 4xx 客户端错误:

 403 Forbidden

 服务器已经理解请求,但是拒绝执行它。

404 Not Found

请求失败,请求所希望得到的资源未被在服务器上发现。

401 Unauthorized

当请请求要求用户验证

405 Method Not Allowed

请求行中指定的请求方法不能被用于请求相应的资源

  • 5xx 服务器错误

 

参考资料:

超文本传输协议: https://zh.wikipedia.org/zh-hans/%E8%B6%85%E6%96%87%E6%9C%AC%E4%BC%A0%E8%BE%93%E5%8D%8F%E8%AE%AE

HTTP 头字段列表:

 https://zh.wikipedia.org/wiki/HTTP%E5%A4%B4%E5%AD%97%E6%AE%B5%E5%88%97%E8%A1%A8

https://msdn.microsoft.com/zh-cn/library/aa287673(v=vs.71).aspx

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值