因工作需要最近需要做webapi接口,領导强烈要求使用RESTful的软件架构风格所以研究了一下RESTful,本文小结了RESTful的设计规范也并不全面,主要是总结了下项目所需的规范
URI 表示资源,资源一般对应服务器端领域模型中的实体类
这里,{version}代表api的版本信息{domain}是一个你可以用来定义任何技术的区域(例如:安全-允许指定的用户可以访问这个区域。)或者业务上的原因(例如:同样的功能在同一个前缀之下。)
URI表示资源的两种方式:资源集合、单个资源
/在url中表达层级,用于按实体关联关系进行对象导航一般根据id导航。
通过标准HTTP方法对资源
POST(创建单个资源POST一般向“资源集合”型uri发起):
PUT(更新单个资源(全量),客户端提供完整的更新后的资源与之对应的是 PATCH,PATCH 负责部分更新愙户端提供要更新的那些字段。PUT/PATCH一般向“单个资源”型uri发起):
安全性和幂等性均不保证反复请求能拿到相同的response。以 DELETE 为例第一次DELETE返回200表示删除成功,第二次返回404提示資源不存在这是允许的。
查询可以捎带以下参数:
此处使用c#语言实现vs创建webapi项目,
本次项目是做一个定时任务的管理系统要为任务的增、删、查、改、启动、停止、禁用、启用提供接口,
通过路由达到 /tasks/1 这种效果如:
URI一般使用名词,一些操作以子资源对待而子资源可鉯用数据库表的字段表示,如任务的启动、停止可以这么写这里任务的运行状态为"RunStatus":
运行效果截图(此部分界面使用Swagger,相关知识请自行学习)
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。