鍍金池/ 問答/PHP  Python/ thinkPHP5里接口返回code的設(shè)計(jì)問題

thinkPHP5里接口返回code的設(shè)計(jì)問題

我想使用Controller類自帶的return方法返回接口信息。其中,code碼我想先定義好一個(gè)常量的列表,然后讓所有Controller層都可以方便的使用。

首先我寫了個(gè)控制層的基類,在里面把code碼定義成靜態(tài)屬性。然后它的子類都可以通過$this::CODE_NAMEl來引用定義好的code碼。

clipboard.png

clipboard.png

雖然效果達(dá)到了,但是感覺有點(diǎn)不對(duì)路啊 ,還請(qǐng)有經(jīng)驗(yàn)的朋友說說一般這個(gè)情況該怎么設(shè)計(jì),謝謝 :)

回答
編輯回答
短嘆

首先,你這個(gè)單獨(dú)寫出來的沒有問題的問題在于放在基類,這個(gè)很明顯是沒必要的。
這個(gè)最好就是單獨(dú)放在一個(gè)Response類,在里面定義一些常見的返回代碼類常量,或者單獨(dú)用一個(gè)類來放

  • 200 請(qǐng)求成功
  • 401001 TOKEN失效
  • 404001 資源不存在
  • 等...

只定義一些公用的,如果因?yàn)闃I(yè)務(wù)邏輯需要返回不同的code,所以對(duì)應(yīng)業(yè)務(wù)的code就應(yīng)該在你業(yè)務(wù)實(shí)現(xiàn)類里面放類常量,保證這個(gè)code在當(dāng)前業(yè)務(wù)邏輯中方便快速定位問題。

2017年7月2日 04:01