HTTP使用指南 | 青训营笔记

69 阅读3分钟
962bd40735fae6cde083a73500b30f2442a70faa.webp

这是我参与「第四届青训营 」笔记创作活动的第2天

HTTP

初始HTTP

HTTP --- 超文本 传输 协议

3-HTTP三部分.png

  • 超文本

    超越了普通文本的文本,文字、图片、视频等的混合体

  • 传输

    两点之间传输数据, 允许有中转或接力

  • 协议

    两个以上的参与者 的 一种行为约定和规范

HTTP 是一个在计算机世界里专门在「两点」之间「传输」文字、图片、音频、视频等「超文本」数据的「约定和规范」

那「HTTP 是用于从互联网服务器传输超文本到本地浏览器的协议 ,这种说法正确吗?

这种说法是不正确的。因为也可以是「服务器< -- >服务器」,所以采用两点之间的描述会更准确。

协议分析

HTTP常见的状态码

6-五大类HTTP状态码.png 1xx 属于提示信息,中间状态

2xx 成功

  • 200 一切正常,如果是非 HEAD 请求,服务器返回的响应头都会有 body 数据。
  • 204 No Content 与 200 OK 基本相同,但响应头没有 body 数据
  • 206 Partial Content 是应用于 HTTP 分块下载或断点续传

3xx 重定向

  • 301 Moved Permanently 表示永久重定向,说明请求的资源已经不存在了,需改用新的 URL 再次访问。
  • 302 Found 表示临时重定向,说明请求的资源还在,但暂时需要用另一个 URL 来访问。
  • 304 Not Modified 不具有跳转的含义,表示资源未修改,重定向已存在的缓冲文件,

4xx 错误码,请求报文有误, 客户端的问题

  • 400 Bad Requset
  • 403 Forbidden 表示服务器禁止访问资源,并不是客户端的请求出错。
  • 404 Not Found 表示请求的资源在服务器上不存在或未找到,所以无法提供给客户端。

5xx 客户端请求正常,服务器处理时内部发生了错误

  • 500 Internal Server Error
  • 501 Not Implemented 表示客户端请求的功能还不支持,类似“即将开业,敬请期待”的意思。
  • 502 Bad Gateway 通常是服务器作为网关或代理时返回的错误码,表示服务器自身工作正常,访问后端服务器发生了错误
  • 503 Service Unavailable 表示服务器当前很忙,暂时无法响应客户端,类似“网络服务正忙,请稍后重试”的意思。

报文

RESTful API 一种API设计风格; REST - Representational State Transfer

  • 每一个URI代表一种资源
  • 客户端和服务器之间,传递这种资源的表现层
  • 客户端通过HTTP method,对服务器端资源进行操作,实现“表现层状态转化”

image.png

有常用的请求头:

  • Accept
  • Content-Type
  • Cache-Control
  • Cookie 响应头
  • Content-Type
  • Cache-Control
  • Server

缓存分为强缓存和协商缓存

HTTP代理应用场景

  • 网络爬虫使用
    • 网络爬虫通过http代理ip在短时间内采集到大量信息
  • 浏览器使用
    • 用于突破网站IP地址限制问题
    • 论坛发帖,问答推广,网上购物
  • 直接使用

总结

本文主要对HTTP概念进行简介,对HTTP协议的相关内容做出简单的展示,以及对HTTP应用场景的介绍