HTTP

作者: 开心的小哈 | 来源:发表于2022-01-11 21:09 被阅读0次

    1. 概念

    • Hyper Text Transfer Protocol 超文本传输协议
    • 传输协议:定义了,客户端和服务端通信时,发送数据的格式
      • 特点:
        1. 基于TCP/IP的高级协议
        2. 默认端口号:80
        3. 基于请求/相应模型的:一次请求对应一次响应
        4. 无状态的协议:每次请求之间相互独立,不能交互数据
    • 历史版本???????????????:
      1. 1.0:每一次请求都会重新建立新的链接
      2. 1.1:复用链接

    2. 请求消息数据格式

    • 请求行
      • 请求方式:请求url 请求协议/版本
        • GET / HTTP/1.1
      • 请求方式:
        • HTTP协议有7种请求方式,常用的有2种
        • GET:
          1. 请求参数在请求行中,在URL后面
          2. 请求的URL长度有限制的
          3. 不太安全(参数在URL后面会人家会被看到)没有请求体
        • POST:
          1. 请求参数在请求体中
          2. 请求的URL长度没有限制的
          3. 相对安全,数据会放在请求体中
    • 请求头:客户端浏览器告诉服务器一些信息
      • 请求头名称:请求头值
        • 键值对格式
      • 常见的请求头
        1. User-Agent:浏览器告诉服务器,我访问你使用的浏览器版本信息
          • 可以在服务器端获取该头的信息,解决浏览器的兼容性问题
        2. Referer:告诉服务器,我(当前请求)从哪里来?
          • 作用:
            1. 防盗链
            2. 统计工作
    • 请求空行
      • 空行(用于分割post请求头和请求体的)
    • 请求体(正文):
      • 携带的参数 名称=值
      • 封装POST请求消息的请求参数的

    3.响应消息数据格式

    服务器端发送给客户端的数据
    数据格式

    1. 响应行
      1. 组成:协议/版本 响应码状态码 状态码描述
      2. 响应的状态码:服务器告诉客户端浏览器本次请求和响应的一个状态,状态码都是3位数字
        1. 分类:
          1. 1xx :服务器接收客户端消息,但没有接受完成,等待一段时间后,发送1xx状态码;(询问客户端还要不要接受)
          2. 2xx:成功。代表200,
          3. 3xx:重定向。代表:302(重定向),304(访问缓存)
          4. 4xx:客户端错误。代表:404(请求路径没有对应的资源) 405(请求方式没有对应的doxxx方法)
          5. 5xx:服务器端错误。代表500(服务器内部出现异常)
    2. 响应头
      1. 格式:头名称:值
      2. 常见的响应头:
        1. Content-type:服务器告诉客户端本次响应体数据格式以及编码格式;text/html;charset=UTF-8
        2. content-disposition:服务器告诉客户端以什么格式打开影响体数据;如果没有设置则是in-line:在当前页面内打开,attachment:filename=xxx以附件形式打开响应体。文件下载;
    3. 响应空行
    4. 响应体:传输的数据;

    相关文章

      网友评论

          本文标题:HTTP

          本文链接:https://www.haomeiwen.com/subject/ytqpcrtx.html