api介面:
1 透過Status Code 來傳回是否為錯誤(業務和非業務錯誤)
如 422 unprocessable entity - 校驗錯誤時用。只有錯誤才回傳errors message提示訊息
成功 200 body只回傳資料載體 如:
name
age
address
2 所有api的正常和錯誤都回傳200 然後在body裡傳回業務錯誤代碼 資料 等。
sucess
code
data
使用第一種好處是 判斷方便,很多框架 如angular react的http請求都集成了success和error處理。
第二種擴充方便,可以防止天朝業者非法幹擾非200
有群友說:外網不要用什麼Status Code,業者不要臉 4xx什麼的會被劫持。
大家遇到api介面沒有使用https被劫持的情況嘛?
哪個是方案按各位自己理解哪個比較好?
我先說說我們API回傳的資料json的格式:
code : 0為成功-100參數錯誤-200 業務處理失敗
msg : 詳細的錯誤原因
data : 介面返回的資料
目前還沒遇到運營商劫持的情況
手機安卓和IOS的APP 用http調用安卓介面也不會有跨域問題