zoukankan      html  css  js  c++  java
  • 如何设计处优秀的Restful API

      只知道遵规循矩的程序员是假程序员,任何技术都是不断发明创造改进的。

      如何设计处优秀的Restful API?  盲目跟风,设计糟糕的Resful API = 浪费时间 ! 

      不啰嗦,直接进入技术主题:

      1、REST API里面的术语

        Resource (资源) :就是数据,是对象,或者说物质

        operation(操作):这个概念是我个人抽出来的,很多人学Restful是没有这个概念,大家只知道资源,我个人认为有资源就有对资源的操作,例如http的方法 : GET、POST、DELETE、PUT

        Collections(集合):就是一组资源

        URL(统一资源定位符):就是资源定位符,因为是通用,所以叫统一资源定位符。说白了可以理解为网址,就是资源的位置,比如一个图片地址、一个文件的地址、一部电影的地址

      2、URL设计使用合适的词语(名词或者动词)

        名词:对资源的表达、形容

        动词:对资源的操作,其中基本的操作方法Http方法 (GET、POST、DELETE、PUT)已经包含,所以URL的动词 很少 ,能抽象出http的方法就尽量,不能抽象则在URL中表达(可参照关于restful开发的疑惑

        全部用小写

        3、使用JSON作为通信格式

        JSON的特性在此不详细说明

      4、响应状态

        一个状态码和一个消息就够了

        状态码使用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开发的疑惑

  • 相关阅读:
    centos的DNS服务工作流程及搭建
    将博客搬至CSDN
    全自动网络安装centos(一)安装前准备工作
    网站私有CA证书制作
    LINUX之启动流程
    脚本判断选择语句常用命令
    linux 常用端口
    linux之网卡绑定
    centos7 无法启动网络(service network restart)错误解决办法(转)
    Linux的磁盘配额详解(Quota)
  • 原文地址:https://www.cnblogs.com/abab/p/9559184.html
Copyright © 2011-2022 走看看