zoukankan      html  css  js  c++  java
  • HTTP请求报文

    一个HTTP请求报文,有请求行request line、请求头部header、空行和请求数据组成。看下图可知:

    1、请求行

    请求行:请求方法、请求地址和协议版本。

    请求方法

    HTTP/1.1 定义的请求方法有8种:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS、TRACE。

    最常的两种GET和POST,如果是RESTful接口的话一般会用到GET、POST、DELETE、PUT。

    谓词:对于RestFul API来说谓词是非常重要的一个元素,WEB API就是使用谓词作为默认的路由方式,最常用的谓词有:POSTDELETEPUTGET,

    这四个谓词对应了“增、删、改、查”四个动作(POST和PUT谁是增谁是改不同资料总有不同的说法,我其实有略微有点困惑啦……有定义说PUT是幂等操作,而POST不是,那PUT就更偏重于改而POST更偏重于增)。

    请求地址

    URL:统一资源定位符,是一种自愿位置的抽象唯一识别方法。

    组成:< 协议> : //<主机> : <端口>/<路径>

    端口和路径有时会省略(http默认端口是80)

    协议protocol   主机host  路径path  参数query string

    协议版本

    协议版本的格式: HTTP/主版本号.次版本号,常用的有HTTP/1.0 HTTP/1.1

    2、请求头部

    请求头部为请求报文添加了一些附加信息,由“名/值”对组成,每行一对,名和值之间使用冒号分隔。

    常见请求头部如下

    请求头部的最后会有一个空行,表示请求头部结束,接下来为请求数据,这一行非常重要, 必不可少。

    3、请求数据

    可选部分,比如GET请求没有请求数据。

    例如POST请求:

    若长生难求以命为注 方冥冥如悟因果殊途 --《长生》
  • 相关阅读:
    jQuery attr 与 prop 区别最简单分析
    Js事件处理模型/周期
    canvas实现点击带水纹的按钮
    js作用域问题
    js 函数里的 this
    css3: scrollLeft,scrollWidth,clientWidth,offsetWidth 的区别
    C# 中的Async 和 Await 的用法详解
    1、Task的优势
    探秘C#中的yield关键字
    详解C#中 Thread,Task,Async/Await,IAsyncResult的那些事儿
  • 原文地址:https://www.cnblogs.com/hc1hr2/p/10000153.html
Copyright © 2011-2022 走看看