-
@PostMapping("/batchUpdate")
-
public R batchUpdate(@RequestBody List<CmsAppLicationEntity> list)
是不是感觉很熟悉的代码,难道写的不对?看着挺直观易懂的。如果采用 Restful 架构风格,上面这五种写法当然不对,这是对 Restful 架构风格不了解所致。
微信搜公众号「猿芯」,后台私信回复 1024 免费领取 SpringCloud、SpringBoot,微信小程序、Java面试、数据结构、算法等全套视频资料。
Restful 架构风格定义
-
“Restful 是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。
由于对 Restful 架构风格理解的不够透彻,一般会产生三种争议的设计误区。
-
误区一 请求路径 URI 是动词,而不是名词问题
-
误区二 URI中带版本号问题
-
误区三 URI 中路径大小写问题
误区一 请求路径 URI 是动词,而不是名词问题
按照对 Restful 架构风格理解,每个业务实体代表一种资源,代表一个名词。
比方说,设计产品列表接口时:这种说法认为,在 URI 中加入版本避免了向后兼容,另外通过过期提示,重定向,文档等手段也能降低用户迁移到新的接口上的成本。
当然有人赞成在请求路径中加入版本号,也有人反对这种加版本号的做法,他们认为:
-
加入版本号会让服务接口变得混乱,经常碰到的情况是,一些低版本的API接口调用一些高版本的API接口,导致数据解析错误,这无疑加大了用户迁移的成本。
-
版本和资源的概念没有任何关系,因此在 URI 中加入版本会让用户混淆。
还有一种说法是,在路径中加版本号是错误的设计方式,在老外写的 Versioning REST Services 这篇文章指出,你应该在请求头的 Accept 指定你的版本号,而不是请求路径中。
例如:
(编辑:PHP编程网 - 黄冈站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|