目标
- 走进http协议
HTTP介绍
-
超文本传输协议(HyperText Transfer Protocol)
- 定义了浏览器怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传给浏览器。
-
网络分层模型:
- 优点
- 高内聚低耦合
- 易复用
- 高扩展性
请求方法
-
GET:
- GET方法用来请求访问已被URI识别的资源。指定的资源经过服务器端解析后返回响应内容。也就是说如果请求的资源是文本,那就保存原样返回,如果是CGI【通用网关接口】那样的程序,则返回经过执行后的输出结果。
-
POST
- 提交数据,即上传数据。
- POST方法用来传输实体的主体。虽然用GET也可以传输实体的主体,但是一般不用,POST的主要目的并不是获取响应的主体内容。
-
PUT
- 修改数据。
- PUT方法主要是用来传输文件。就像FTP协议的文件上传一样,要求在请求报文的主体中包含文件内容,然后保存到请求URI指定的位置。但是HTTP 1.1的PUT方法自身不带验证机制,任何人都可以上传文件,存在安全问题。架构采用REST【表征状态转移】标准的同类Web网站,就可以会开放使用PUT方法。
-
HEAD
- 获取资源的元信息。HEAD方法和GET方法一样,只是不返回报文主体部分。用于确认URI的有效性及资源更新的日期时间等。
-
DELETE
- 删除资源,是与PUT相反的方法,DELETE方法按请求URI删除指定的资源。
-
CONNECT
- 建立连接隧道,用于代理服务器
-
OPTIONS
- 列出可对资源实行的请求方法,用来跨域请求
-
TRACE
- 追踪请求-响应的传输路径
-
常用状态码
RFC 规定 HTTP 的状态码为三位数,被分为五类:
-
1xx: 表示目前是协议处理的中间状态,还需要后续操作。
-
2xx: 表示成功状态。
-
3xx: 重定向状态,资源位置发生变动,需要重新请求。
-
4xx: 请求报文有误。
-
5xx: 服务器端发生错误。
-
常用:
- 200 OK
- 是见得最多的成功状态码。
- 通常在响应体中放有数据。
- 404 Not Found
- 资源未找到,表示没在服务器上找到相应的资源。
- 500 Internal Server Error
- 仅仅告诉你服务器出错了,服务期出了啥错咱也不知道。
- 200 OK
-
请求过程
- 浏览器分析链接指向页面的URL
- 浏览器向DNS请求解析的IP地址
- 域名系统DNS解析出掘金服务器的IP地址
- 浏览器与该服务器建立TCP连接(默认端口为80)
- 浏览器发出HTTP请求:GET/post/7232577434472874042
- 服务器通过HTTP响应把文件发送给浏览器
- 释放TCP连接
- 浏览器解释文件,并将Web页显示给用户
总结
- 重新复习了远程过程调用这个知识点,对之后面试可能会起到作用
- 加深了使用HTTp的应用场景的印象
引用
- ppt:bytedance.feishu.cn/file/boxcnQ…
- 相关好文章