30. http协议
http协议
数据在网络上交互也是需要遵守交通规则的. 基于请求和响应的一种约定
请求:前端->后端
发请求的本质,就是在访问服务器文件
服务器根据请求返回数据给前端
发请求的规范:遵循url规则
http://ip地址+端口号+文件路径
ip:计算机网络中的唯一识别符,类似于人的身份证
端口号:计算机上每一个软件的唯一识别符
文件路径:文件的路径
响应:后端->前端
响应的本质:根据请求返回响应数据
从浏览器地址栏输入url到显示页面的步骤
- 浏览器根据请求的 URL 交给 DNS 域名解析,找到真实 IP ,向服务器发起请求;
- 服务器交给后台处理完成后返回数据,浏览器接收⽂件( HTML、JS、CSS 、图象等);
- 浏览器对加载到的资源( HTML、JS、CSS 等)进⾏语法解析,建⽴相应的内部数据结构 (如 HTML 的 DOM );
- 载⼊解析到的资源⽂件,渲染⻚⾯,完成。
Post 和 Get 的区别
- Get 请求能缓存, Post 不能
- Post 相对 Get 安全⼀点点,因为 Get 请求都包含在 URL ⾥,且会被浏览器保存历 史纪录, Post 不会,但是在抓包的情况下都是⼀样的。
- Post 可以通过 request body 来传输⽐ Get 更多的数据, Get 没有这个技术
- URL 有⻓度限制,会影响 Get 请求,但是这个⻓度限制是浏览器规定的,不是 RFC 规 定的
- Post ⽀持更多的编码类型且不对数据类型限制
常见状态码
2XX 成功
- 200 OK ,表示从客户端发来的请求在服务器端被正确处理
- 204 No content ,表示请求成功,但响应报⽂不含实体的主体部分
- 205 Reset Content ,表示请求成功,但响应报⽂不含实体的主体部分,但是与 204 响应不同在于要求请求⽅重置内容
- 206 Partial Content ,进⾏范围请求
3XX 重定向
- 301 moved permanently ,永久性重定向,表示资源已被分配了新的 URL
- 302 found ,临时性重定向,表示资源临时被分配了新的 URL
- 303 see other ,表示资源存在着另⼀个 URL,应使⽤ GET ⽅法获取资源
- 304 not modified ,表示服务器允许访问资源,但因发⽣请求未满⾜条件的情况
- 307 temporary redirect ,临时重定向,和302含义类似,但是期望客户端保持请求⽅法不变向新的地址发出请求
4XX 客户端错误
- 400 bad request ,请求报⽂存在语法错误
- 401 unauthorized ,表示发送的请求需要有通过 HTTP 认证的认证信息
- 403 forbidden ,表示对请求资源的访问被服务器拒绝
- 404 not found ,表示在服务器上没有找到请求的资源
5XX 服务器错误
- 500 internal sever error ,表示服务器端在执⾏请求时发⽣了错误
- 501 Not Implemented ,表示服务器不⽀持当前请求所需要的某个功能
- 503 service unavailable ,表明服务器暂时处于超负载或正在停机维护,⽆法处理请求

浙公网安备 33010602011771号