1、HTTP 介绍:
HTTP协议 是 (Hyper Text Transfer Protocol)(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。。
HTTP是一个基于 TCP/IP 通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。
2、HTTP 请求 和 响应:
HTTP协议工作于客户端-服务端架构上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。
Web服务器根据接收到的请求后,向客户端发送响应信息。
**三点注意事项:
- HTTP是无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
- HTTP是媒体独立的:这意味着,只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过HTTP发送。客户端以及服务器指定使用适合的MIME-type内容类型。
- HTTP是无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
序列化和反序列化:
网络数据传输,双方需要约定好统一的数据格式。
(广泛使用的统一标准就是协议,小众就是序列化和反序列化)
3、HTTP 请求方法:
HTTP1.0 定义了三种请求方法: GET, POST 和 HEAD方法。
HTTP1.1 新增了六种请求方法:OPTIONS、PUT、PATCH、DELETE、TRACE 和 CONNECT 方法。
get 和 post 区别 (面试!!):
1、get 的请求数据只能放在 url 中; post 的数据可以放在url 和请求体
2、url 长度有限制,所以 get 方法请求数据不能太多,并且 url 只能传输 ascII 字符
3、 安全性讲,post 可以存放在请求数据在请求体,相对更安全。
4、HTTP 状态码:
标注的部分为我们平时经常能碰到的情况:
扫描二维码关注公众号,回复:
12341713 查看本文章
5、HTTP 头信息
6、URL 和 URI
URL(Uniform Resource Locators) - 统一资源定位器
(通俗讲 : 就是一个网页地址)
举个栗子:
https://www.baidu.com/
scheme://host.domain:port/path/filename
- scheme - 定义因特网服务的类型。(协议(http))
- host - 定义域主机(http 的默认主机是 www)
- domain - 定义因特网域名,比如 runoob.com
- :port - 定义主机上的端口号(http 的默认端口号是 80)
- path - 定义服务器上的路径(如果省略,则文档必须位于网站的根目录中)
- filename - 定义文档/资源的名称
常见的 URL Scheme:
URL 是 绝对路径
URI 是 相对路径
应用上下文(URI)+服务路径(URI)组合起来也是URI