關於做者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接口,便於服務器端與客戶端代碼重用。服務器端和客戶端可根據實際所定義規範編寫序列化和反序列化工具,以便減小一些開發時間。工具
本文檔爲我的觀點,僅供參考。大數據
用於client向server發起的POST、PUT和DELETE請求
{ "code": "value", //結果碼,必需。客戶端應首先根據此項結果進行相應處理。 "message": "value" //文本消息提示。 }
<?xml version="1.0" encoding="utf-8"?> <result> <code></code> <message></message> </result>
{ "code": "value", //響應結果碼,必需;客戶端可根據此結果判斷數據查詢是否正常 "datum": { } }
{ "code": 1, "datum": { "id":3, "name":"jennifer" "age": 23, "sex": "female" } }
<?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>
{ "code": "value", //響應結果碼,必需。 "data": [{ //數據列表,數組 },{ }] }
{ "code": 1, "data": [{ "id":3, "name":"jennifer" "age": 23, "sex": "female" },{ "id":5, "name":"lenbo" "age": 21, "sex": "male" }] }
<?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>
{ "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 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>
僅供參考,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,偶爾會有一些大數據相關,會推薦一些好玩的東西。但願你會喜歡~