前端 | 青训营笔记

81 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的的第8天,是关于《HTTP实用指南》的学习。

HTTP

什么是HTTP?

  • Hyper Text Transfer Protocol 超文本传输协议

  • 应用层协议 基于TCP协议

  • 请求响应

  • 简单可扩展

  • 无状态

协议分析

发展

image.png

以HTTP/1.1为例子

2.png

Method

Safe(安全的):不会修改服务器的数据的方法(GET HEAD OPTINONS)

Idempot(幂等):同样的请求被执行一次与连续执行多次的效果是一样的,服务器的状态也是一样的。 所有safe的方法都是幂等的(GET HEAD OPTINONS PUT DELETE)

状态码

  • 200:这个是最常见的http状态码,表示服务器已经成功接受请求,并将返回客户端所请求的最终结果

  • 301:客户端请求的网页已经永久移动到新的位置,当链接发生变化时,返回301代码告诉客户端链接的变化,客户端保存新的链接,并向新的链接发出请求,已返回请求结果

  • Unauthorized 请求未经授权

  • 404:请求失败,客户端请求的资源没有找到或者是不存在

  • 500:服务器遇到未知的错误,导致无法完成客户端当前的请求。

  • 503:服务器由于临时的服务器过载或者是维护,无法解决当前的请求,以上http状态码是服务器经常返回的状态代码,用户只能通过浏览器的状态了解服务器是否正常运行,一般除了错误的状态码,都不会看到服务器的状态码的

常用请求头

Accept可接受的响应内容类型(Content-Types)。Accept: text/plain固定
Content-Type请求体的MIME类型 (用于POST和PUT请求中)Content-Type: application/x-www-form-urlencoded固定
From发起此请求的用户的邮件地址From: user@itbilu.com固定
Origin发起一个针对跨域资源共享的请求Origin: http://www.itbilu.com固定: 标准
Cache-Control用来指定当前的请求/回复中的,是否使用缓存机制。Cache-Control: no-cache固定
------

缓存

image.png

HTTP/2

    更快,更稳定,更简单
  • HTTP/2连接都是永久的,而且仅需要每个来源一个连接
  • 流控制:阻止改善方向接收方发送大量数据的机制

image.png

HTTPS概述

  • HTTPS: Hypertext Transfer Protocol Secure

  • 经过TSL/SSL加密

  • 对称加密:加密和解密都是使用同一个密钥

  • 非对称加密:加密和解密需要使用两个不同的密钥:公钥和私钥

小结

这种协议更新换代太快了,所以我们需要不断的学习,不过底层的知识发生不了大的变化。