HTTP API響應數據規範整理

關於做者javascript

  • 馬隆博(Lenbo Ma),Java,Javascript前端

  • Blog: http://mlongbo.comjava

  • E-Mail:mlongbo@gmail.com後端

  • 建立於:2013/11/08api

轉載請註明出處:數組

http://mlongbo.com/http-apixiang-ying-sh...緩存


概述

本文檔爲本人對長期開發API接口所整理的經驗總結,若有不完善或不合理的地方,望各位多提意見。服務器

文檔目的爲規範服務器端API接口,便於服務器端與客戶端代碼重用。服務器端和客戶端可根據實際所定義規範編寫序列化和反序列化工具,以便減小一些開發時間。工具

本文檔爲我的觀點,僅供參考。大數據

HTTP接口

Execute(CUD)

用於client向server發起的POST、PUT和DELETE請求

JSON

參考
{
    "code": "value",   //結果碼,必需。客戶端應首先根據此項結果進行相應處理。
    "message": "value"    //文本消息提示。
}

XML格式

參考
<?xml version="1.0" encoding="utf-8"?> 
<result>
    <code></code>
    <message></message>
</result>

Query(R)

單項數據查詢

JSON
參考
{
    "code": "value",    //響應結果碼,必需;客戶端可根據此結果判斷數據查詢是否正常
    "datum": {
     }
}
示例
{
    "code": 1, 
    "datum": {
         "id":3,
         "name":"jennifer"
         "age": 23,
         "sex": "female"
     }
}
Xml格式
參考
<?xml version="1.0" encoding="utf-8"?> 
<result>
    <code></code>
    <datum>
        <id></id>
        <name></name>
        <age></age>
        <sex></sex>
    </datum>
</result>
示例
<?xml version="1.0" encoding="utf-8"?> 
<result>
    <code>1</code>
    <datum>
        <id>3</id>
        <name>jennifer</name>
        <age>23</age>
        <sex>female</sex>
    </datum>
</result>

列表數據查詢

Json格式
參考
{
    "code": "value", //響應結果碼,必需。
    "data": [{    //數據列表,數組
     },{
     }]
}
示例
{
    "code": 1,
    "data": [{
         "id":3,
         "name":"jennifer"
         "age": 23,
         "sex": "female"
     },{
         "id":5,
         "name":"lenbo"
         "age": 21,
         "sex": "male"
     }]
}
Xml格式
參考
<?xml version="1.0" encoding="utf-8"?> 
<result>
    <code></code>
    <data>
        <datum>
        </datum>
        <datum>
        </datum>
    </data>
</result>
示例
<?xml version="1.0" encoding="utf-8"?> 
<result>
    <code>1</code>
    <data>
        <datum>
            <id>5</id>
            <name>lenbo</name>
            <age>21</age>
            <sex>male</sex>
        </datum>
    </data>
</result>

分頁數據查詢

Json格式
參考
{
    "code": 1,    //響應結果碼,必需。
    "page": {    //分頁參數,必需。
        "totalpage": "value", //總頁數
        "count":"value",    //每頁記錄條數
        "curr": "value",    //本頁頁碼
        "totalcount": "value" //總記錄數
    },
    "data": [{    //列表數據,數組。
     },{
     },{
     }]
}
示例
{
    "code": 1,
    "page": {
        "totalpage": 20, //總頁數
        "count":10,    //每頁記錄條數
        "curr":1,    //本頁頁碼
        "totalcount": 180 //總記錄數
    },
    "data": [{
         "id":3,
         "name":"jennifer"
         "age": 23,
         "sex": "female"
     },{
         "id":5,
         "name":"lenbo"
         "age": 21,
         "sex": "male"
     }]
}
Xml格式
參考
<?xml version="1.0" encoding="utf-8"?> 
<result>
    <code></code>
    <page>
        <totalpage></totalpage>
        <count></count>
        <curr></curr>
        <totalcount></totalcount>
    </page>
    <data>
        <datum>
        </datum>
        <datum>
        </datum>
    </data>
</result>
示例
<?xml version="1.0" encoding="utf-8"?> 
<result>
    <code>1</code>
    <page>
        <totalpage>20</totalpage>
        <count>10</count>
        <curr>2</curr>
        <totalcount>180</totalcount>
    </page>
    <data>
        <datum>
            <id>5</id>
            <name>lenbo</name>
            <age>21</age>
            <sex>male</sex>
        </datum>
        <datum>
            <id>2</id>
            <name>jennifer</name>
            <age>23</age>
            <sex>female</sex>
        </datum>
    </data>
</result>

附錄1:code對照表參考

僅供參考,API接口開發人員可根據實際狀況自定義相應結果碼或節點

  • 200 ok - 成功狀態,對應,GET,PUT,PATCH,DELETE.

  • 500 faild - 失敗狀態

  • 304 not modified - HTTP緩存有效。

  • 400 bad request - 請求格式錯誤。能夠標識參數錯誤或參數缺失

  • 401 unauthorized - 未受權。

  • 403 forbidden - 鑑權成功,可是該用戶沒有權限。

  • 404 not found - 請求的資源或接口不存在

  • 405 method not allowed - 該http方法不被容許。

  • 410 gone - 這個url對應的資源如今不可用。

  • 415 unsupported media type - 請求類型錯誤。

  • 422 unprocessable entity - 校驗錯誤時用。

  • 429 too many request - 請求過多。


掃描二維碼,關注我。
內容大多會是後端技術、前端工程、DevOps,偶爾會有一些大數據相關,會推薦一些好玩的東西。但願你會喜歡~

掃描二維碼關注我

相關文章
相關標籤/搜索