zoukankan      html  css  js  c++  java
  • HTTP常见请求方法 HTTP请求 响应详解

    HTTP Request Method

    序号方法描述
    1 GET 请求指定的页面信息,并返回实体主体。
    2 HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
    3 POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。
    4 PUT 从客户端向服务器传送的数据取代指定的文档的内容。
    5 DELETE 请求服务器删除指定的页面。
    6 CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
    7 OPTIONS 允许客户端查看服务器的性能。
    8 TRACE 回显服务器收到的请求,主要用于测试或诊断。
    9 PATCH 实体中包含一个表,表中说明与该URI所表示的原内容的区别。  是对 PUT 方法的补充,用来对已知资源进行局部更新 。
    10 MOVE 请求服务器将指定的页面移至另一个网络地址。
    11 COPY 请求服务器将指定的页面拷贝至另一个网络地址。
    12 LINK 请求服务器建立链接关系。
    13 UNLINK 断开链接关系。
    14 WRAPPED 允许客户端发送经过封装的请求。
    15 Extension-mothed 在不改动协议的前提下,可增加另外的方法。
    '''
    get 向特定的路径资源发出请求,数据暴露在url中
    post 向指定路径资源提交数据进行处理请求(一般用于上传表单或者文件),数据包含在请求体中
    PUT 从客户端向服务器传送的数据取代指定的文档的内容
    delete 请求服务器删除指定的页面
    patch  是对 PUT 方法的补充,用来对已知资源进行局部更新 。
    '''
    

      

      

    HTTP请求报文解剖

    HTTP Request :HTTP请求
    Request Line:请求行
    Header:请求头
    Request Body:请求体

    HTTP请求报文由3部分组成(请求行+请求头+请求体):

    下面是一个实际的请求报文:

    ①是请求方法,HTTP/1.1 定义的请求方法有8种:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS、TRACE,最常的两种GET和POST,如果是RESTful接口的话一般会用到GET、POST、DELETE、PUT。
    ②为请求对应的URL地址,它和报文头的Host属性组成完整的请求URL
    ③是协议名称及版本号。
    ④是HTTP的报文头,报文头包含若干个属性,格式为“属性名:属性值”,服务端据此获取客户端的信息。
    ⑤是报文体,它将一个页面表单中的组件值通过param1=value1&param2=value2的键值对形式编码成一个格式化串,它承载多个请求参数的数据。不但报文体可以传递请求参数,请求URL也可以通过类似于“/chapter15/user.html? param1=value1&param2=value2”的方式传递请求参数。
    对照上面的请求报文,我们把它进一步分解,你可以看到一幅更详细的结构图:

    HTTP响应报文解剖


    HTTP的响应报文也由三部分组成(响应行+响应头+响应体):

    以下是一个实际的HTTP响应报文:

     
     
    ①报文协议及版本;
    ②状态码及状态描述;
    ③响应报文头,也是由多个属性组成;
    ④响应报文体,即我们真正要的“干货”。

    响应状态码
    和请求报文相比,响应报文多了一个“响应状态码”,它以“清晰明确”的语言告诉客户端本次请求的处理结果。
    HTTP的响应状态码由5段组成:

    1xx 消息,一般是告诉客户端,请求已经收到了,正在处理,别急...
    2xx 处理成功,一般表示:请求收悉、我明白你要的、请求已受理、已经处理完成等信息.
    3xx 重定向到其它地方。它让客户端再发起一个请求以完成整个处理。
    4xx 处理发生错误,责任在客户端,如客户端的请求一个不存在的资源,客户端未被授权,禁止访问等。
    5xx 处理发生错误,责任在服务端,如服务端抛出异常,路由出错,HTTP版本不支持等。
    

      

     
  • 相关阅读:
    [golang]golang signal.Notify 信号,如何优雅的退出
    解密
    [财务][数据化分析][帆软]报表设计-数据分析(op=view)
    [财务][数据化分析][帆软]报表设计-填报预览
    [财务][数据化分析][帆软]如何量化你的用户价值?RFM模型综合实战
    [数据分析][RFM模型]用数据分析用户
    [帆软][内网穿透][LanProxy]蛋疼的网络架构探讨
    [财务][数据化分析][帆软]报表设计-分页预览
    [财务][数据化分析][帆软]报表设计-模板预览
    [财务][数据化分析][帆软]报表设计-聚合报表设计
  • 原文地址:https://www.cnblogs.com/wakee/p/12786457.html
Copyright © 2011-2022 走看看