開發日記 介面開發設計

2021-10-09 14:49:17 字數 2432 閱讀 7173

介面開發使用規則

業務術語:

請求:通過http協議把需要傳輸的資料傳送給接收方的過程。

返回:根據得到的資料處理完成後,將處理完成的結果反饋給接收方。

敏感詞:帶有敏感政治傾向,暴力傾向,不健康色彩或不文明的詞。

特殊字元:特殊字元包括:^ | $ # 等。

操作結果:成功失敗,成功返回結果,失敗返回結果錯誤資訊。

操作流程:執行之前,執行之後,正在執行。

介面編寫規則:

1. 所有的介面必須包含method和version引數。

2. 所有的介面增加了版本號管理,以便適應多個不同版本客戶端的使用。

3. 統一的介面呼叫方式,減少切換思維導致編碼速度下降。

4. 介面返回結果統一使用標準的json格式,暫時不考慮使用xml格式。

5. 所有的介面必須要有日誌,方便維護。

介面接入規則:

1. 配置合作著接入id必須是唯一的。

2. 所有的介面必須包含method和version引數。

3. 引數列表中,不可空的引數必須配置。

4. 引數列表中,可空的但需要多選一的多個引數中,必須配置至少乙個。

5. 字串轉化成位元組流時指定的字符集必須與介面一直,常用的字串編碼有:(ascii/unicode/utf-8)。

6. 介面資料傳輸必須使用http協議,支援get或post方式提交。

7. 保證網路順暢,防止重複提交。

8. 如果響應時間過長直接導致資料返回失敗,提示接收端重新提交。

介面編碼設計:

使用抽象依賴倒置思維進行介面設計

· 定義乙個通用抽象類

public inte***ce iservice

public abstract class service

}

· 所有介面繼承這個抽象類 如下:

public class companypersonnelomittotal : service

else

}}

· 上位機呼叫介面api

public class testservice : service

else if (result.resobject is string)

}else}}

private ipatrolnew classfactory(string version)

return p;

}}

· 使用ihttphandler方式對外的**

}介面呼叫示例:以下是乙個介面的描述

android介面呼叫示例:

arraylistparams = new arraylist();

params.add(new basicnamevaluepair("method"," getcompanypersonnelomittotal"));

params.add(new basicnamevaluepair("departid","725"));

params.add(new basicnamevaluepair("datetype","currmonth"));

try

jsonarray array = json.optjsonarray("object");

for(int i = 0;i < array.length(); i++ )

} catch (exception e)

呼叫 人員漏巡統計 介面示例

jquery介面呼叫示例:

時間查詢介面引數設計

datetype

curryear

本年currmonth

本月quarter

yearindex代表是那一年,預設當前年度

quarterindex代表第幾季度,預設全部

year

yearindex代表是那一年,預設當前年度

month

yearindex代表是那一年,預設當前年度

monthindex代表那月,預設全部

date

startdate開始時間,時間格式:yyyy-mm-dd hh:mm:ss

enddate結束時間

開發日記 介面開發設計

介面開發使用規則 業務術語 請求 通過http協議把需要傳輸的資料傳送給接收方的過程。返回 根據得到的資料處理完成後,將處理完成的結果反饋給接收方。敏感詞 帶有敏感政治傾向,暴力傾向,不健康色彩或不文明的詞。特殊字元 特殊字元包括 等。操作結果 成功失敗,成功返回結果,失敗返回結果錯誤資訊。操作流程...

QT開發日記

1,在使用moc的時候,q object這個巨集不能用在乙個類的定義檔案中,只能在單獨作為乙個類的宣告檔案中用,否則會出現 vtable for x 類名 的出錯提示。如果乙個類只宣告了,而沒有定義,也會出現上述錯誤.這時可以在這個檔案的末尾加上 include moc xx為不要.cpp字尾的檔名...

Ubuntu開發日記

最近在做ubuntu下開發,遇到一些問題,特在這裡做個整理 apt get update更新自己的資料來源,獲得更新的package 資訊。apt get install package name 安裝新的包。dpkg l 列出安裝所有包的資訊 dpkg l列出包的安裝位置等詳細內容 在www.pa...