如何設計處優秀的Restful API 關於restful開發的疑惑 關於restful開發的疑惑

  只知道遵規循矩的程序員是假程序員,任何技術都是不斷髮明創造改進的。html

  如何設計處優秀的Restful API?  盲目跟風,設計糟糕的Resful API = 浪費時間 ! java

  不囉嗦,直接進入技術主題:程序員

  一、REST API裏面的術語

    Resource (資源) :就是數據,是對象,或者說物質restful

    operation(操做):這個概念是我我的抽出來的,不少人學Restful是沒有這個概念,你們只知道資源,我我的認爲有資源就有對資源的操做,例如http的方法 : GET、POST、DELETE、PUTpost

    Collections(集合):就是一組資源url

    URL(統一資源定位符):就是資源定位符,由於是通用,因此叫統一資源定位符。說白了能夠理解爲網址,就是資源的位置,好比一個圖片地址、一個文件的地址、一部電影的地址spa

  二、URL設計使用合適的詞語(名詞或者動詞)

    名詞:對資源的表達、形容設計

    動詞:對資源的操做,其中基本的操做方法Http方法 (GET、POST、DELETE、PUT)已經包含,因此URL的動詞 不多 ,能抽象出http的方法就儘可能,不能抽象則在URL中表達(可參照關於restful開發的疑惑rest

    所有用小寫htm

    三、使用JSON做爲通訊格式

    JSON的特性在此不詳細說明

  四、響應狀態

    一個狀態碼和一個消息就夠了

    狀態碼使用HTTP狀態碼,消息根據業務或者系統狀況給合適的消息,不需再設計個什麼 success 字段 爲true 或 false,有狀態碼了這是畫蛇添足。
    

/**
 * 統一碼
 * 
 * @author 塵無塵
 *
 */
public interface UnifiedCode {

    /**
     * 成功
     */
    static final int SUCCESS = 200;

    /**
     * 參數錯誤,雖然請求成功,可是請求參數錯誤 致使 沒法調用接口或者沒法正常執行接口
     */
    static final int PARAM_ERROR = 400;

    /**
     * 系統錯誤,雖然請求成功,可是因爲系統內部問題致使沒法正常處理請求
     */
    static final int SYS_ERROR = 500;
}

 

    

       

 

關於restful開發的疑惑

相關文章
相關標籤/搜索