如何設(shè)計(jì)API返回碼(錯(cuò)誤碼)?


以HTTP狀態(tài)碼為例,為了更加清晰的表述和區(qū)分狀態(tài)碼的含義,HTTP狀態(tài)做了分段。搜索公眾號互聯(lián)網(wǎng)架構(gòu)師后臺回復(fù)“2T”,獲取一份驚喜禮包。

對于后端開發(fā)來說,我們通常見到的都是:
5XX狀態(tài)碼,比如502->服務(wù)器異常,通常就是服務(wù)沒正常運(yùn)行,或者代碼執(zhí)行出錯(cuò)。
通過狀態(tài)碼即可初步判斷問題原因,HTTP狀態(tài)的設(shè)計(jì)思路值得借鑒。
參數(shù)約定

雖說是返回碼設(shè)計(jì),但是只有code是不行的,還要有對應(yīng)的message,讓人可以看懂。


通過這樣的設(shè)計(jì),不論是程序還是人都可以非常方便的區(qū)分API的返回結(jié)果,關(guān)鍵是統(tǒng)一!


返回信息的統(tǒng)一處理

有了統(tǒng)一的code,我們就可以通過Nginx或者APM工具統(tǒng)計(jì)API請求Code數(shù)量及分布信息。
我們可以根據(jù)單位時(shí)間內(nèi)99999的數(shù)量來做API的異常告警。
我們可以根據(jù)Code的返回餅圖,幫助我們發(fā)現(xiàn)系統(tǒng)、業(yè)務(wù)流程中的問題。
全棧架構(gòu)社區(qū)交流群
?「全棧架構(gòu)社區(qū)」建立了讀者架構(gòu)師交流群,大家可以添加小編微信進(jìn)行加群。歡迎有想法、樂于分享的朋友們一起交流學(xué)習(xí)。
看完本文有收獲?請轉(zhuǎn)發(fā)分享給更多人
往期資源:
評論
圖片
表情
