对restful的一些思考

发布时间 2023-08-28 10:19:12作者: Timeouting

此笔记仅代表个人观点,如有出入请各位不吝指正。

我常常会想工作为什么要提倡使用RestFul的规范开发接口?其实在工作中看来,不使用restful开发和使用restful开发最终达成的效果甚至性能应该是没有差别的

以下是一段代码示例

在Restful之前的操作:
http://127.0.0.1/user/query/1 GET 根据用户id查询用户数据
http://127.0.0.1/user/save POST 新增用户
http://127.0.0.1/user/update POST 修改用户信息
http://127.0.0.1/user/delete/1 GET/POST 删除用户信息

RESTful用法:
http://127.0.0.1/user/1 GET 根据用户id查询用户数据
http://127.0.0.1/user POST 新增用户
http://127.0.0.1/user PUT 修改用户信息
http://127.0.0.1/user DELETE 删除用户信息

我们可以看出,不使用rest的方法接口一般是拿操作的名称来锁定方法名称的,如增删查改为 save delete query update;而使用了restful确实是比上原来的方法路径短一级。取而代之的是提交的方式不通从而锁定了对应的操作。那么这样看就有两个优势:1、方法的路径更短。2、可以聚焦于资源。因为在rest中,强调了资源的概念。所以方法路径中带上资源的名字比方说 user,就是对user的资源进行操作。我们知道,put、delete都是post提交方式的变体。所以可以理解为post+幂等=put