美文网首页
HTTP1:报文结构

HTTP1:报文结构

作者: 捞小虾 | 来源:发表于2019-03-01 14:51 被阅读0次

    Author: Xu FC

    HTTP 协议


    HTTP (Hypertext Transfer Protocol, 超文本传输协议) 是常见的应用层传输协议。该协议有诸多版本,目前应用最广泛的为 HTTP/1.1 版本。

    HTTP/1.1 报文结构


    HTTP-message   = start-line
                     *( header-field CRLF )
                     CRLF
                     [ message-body ]
    
    • 行结束符: CRLF
    • HTTP header-field 与 message-body 之间以空行分割。
    • Partial Content 的 body part 之间以空行分割。

    HTTP/1.1 请求


    HTTP/1.1 请求示例
    • Start-line: 红框部分为请求行,其中包括
      • Request method(红字部分)
      • URL(绿字部分)
      • HTTP 版本(橘字部分)
    • Header-field:绿框部分为请求头部域,其中
      • Header name(棕色部分)
      • Header value(蓝色部分)
      • Header name 与 header value 以冒号(:)分隔
      • 一个 header 多个值,各值之间以逗号(,)分隔
      • Header value 中的 值 与 属性 之间以分号(;)分隔
      • Cookie header 中的各个 cookie 以逗号或分号(,|;)分隔
    • Message-body:黄框部分为请求主体,并不是所有请求都带 message-body, 比如 HEAD 等请求不带 body,POST 等请求带 body。

    HTTP/1.1 应答


    HTTP/1.1 应答示例
    • Start-line: 红框部分为应答行,其中包括

      • HTTP 版本(橘字部分)
      • 响应状态码(绿字部分): 三位数字
        1xx:收到请求,请继续
        2xx:收到并完成请求
        3xx:重定向
        4xx:客户端错误
        5xx:服务器错误
      • 原因短语(红字部分)
    • Header-field:绿框部分为应答头部域,结构同请求头部域

    • Message-body:黄框部分为请求主体,并不是所有应答都带 message-body, 比如 HEAD 请求的应答不带 body。

    相关文章

      网友评论

          本文标题:HTTP1:报文结构

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