zoukankan      html  css  js  c++  java
  • Http权威指南(报文)

    1.报文的组成

    报文由 起始行、首部、主体(可选)组成

    请求报文:

    <method> <request-URL> <version>
    <headers>
    
    <entity-body>
    
    e.g:
    GET   /specials/demo.png     HTTP/1.0
    Host: www.eco.com

    响应报文:

    <version> <status> <reason-phrase>
    <headers>
    
    <entity-body>
    
    e.g:
    HTTP/1.0   200  OK
    Content-Type: Application/json
    Content-Length:1212
    
    {"version":1.0}

    2.各部分详解

    起始行(请求行/响应行):请求行描述服务器应该执行的操作,响应行描述了操作的状态

    首部:为报文添加的附加信息,是一些键值对列表,常见的首部实例如下:

    Date:Tue,3Oct 1997 02:16:03 GMT                      //日期
    
    Content-type:Application/json                        //实体的主体部分是json
    
    Content-length:1024                                  //主体部分的数据量
    
    Accept: image/gif,image/jpeg,text/html               //客户端可以接受图片以及html

    主体部分:HTTP报文的负荷,就是HTTP要传输的内容,可以是各种格式

    3.方法

    GET:是最常用的方法,通常用于请求服务器资源

    HEAD:和GET方法很相似,但是只返回响应报文的起始行和首部,不包含主体部分,用于在不获取实际资源的情

        况下,对资源的首部进行检查

    PUT:与GET相反,它用于向服务器写入文档,让服务器用请求的主体部分来创建一个由请求的URL命名的新文档(存储数据)

    POST:起初用来向服务器输入数据(发送数据),实际上现在大多用它来支持HTML的表单

    TRACE:允许客户端在最终将请求发送给服务器时,看看它变成了什么样子(客户端发起的请求,中间可能要经过一些防火墙、

        代理、网关等,这些都有可能会修改原始http请求),可以用于检测代理对用户请求产生的效果

    OPTIONS:请求服务器告知其支持哪些功能(方法)

    DELETE:请求服务器删除请求URL所指定的资源,但无法保证,应为HTTP规范允许服务器在不告知客户端的情况下撤销请求

    扩展方法:未在规范中定义的

  • 相关阅读:
    CVE-2020-5405 Spring Cloud Config 目录穿越漏洞分析
    CVE-2019-3799spring-cloud-config 目录穿越漏洞复现
    fastjson<=1.2.68的漏洞分析
    【转载】半自动化挖掘request实现多种中间件回显
    整理一下weblogic回显的代码
    CentOS7在python交互模式下输入退回键时出现乱码^H^H
    1 单例设计模式
    用nohup命令实现PHP的多进程
    用进程和线程关系引入操作系统学习
    8.5 归并排序
  • 原文地址:https://www.cnblogs.com/eco-just/p/9363614.html
Copyright © 2011-2022 走看看