Restful Api 的好与坏
2017-03-09 10:32
183 查看
restful 的特色是接口少
get,put,post,delete
好处是容易记, 统一.
但是业务上往往不会这么简单.
不同的 user/roles 调用同一个 get 接口, 出来的结果不一定相同.
或许 admin 可以看见所有的 resource
但是 member 只能看见自己创建的 resource.
又或许 admin 可以看见 resource 所有的属性, 但是 member 只能看见某一些属性.
要在 restful api 上处理这样的需求, 你就要把逻辑放到同一个接口里. ( 不是说不能实现, 也不是说不优雅, 只是觉得以前写 RPC 的模式更简单些. )
那如果我们不使用 restful 的话, 我们可以很容易的写 2 个接口来区分开这些逻辑.
写权限也变得很容易, 扩展也很容易.
所以经验告诉我, 鱼与熊掌, 难以兼得.
所以要依据项目自己衡量.
get,put,post,delete
好处是容易记, 统一.
但是业务上往往不会这么简单.
不同的 user/roles 调用同一个 get 接口, 出来的结果不一定相同.
或许 admin 可以看见所有的 resource
但是 member 只能看见自己创建的 resource.
又或许 admin 可以看见 resource 所有的属性, 但是 member 只能看见某一些属性.
要在 restful api 上处理这样的需求, 你就要把逻辑放到同一个接口里. ( 不是说不能实现, 也不是说不优雅, 只是觉得以前写 RPC 的模式更简单些. )
那如果我们不使用 restful 的话, 我们可以很容易的写 2 个接口来区分开这些逻辑.
写权限也变得很容易, 扩展也很容易.
所以经验告诉我, 鱼与熊掌, 难以兼得.
所以要依据项目自己衡量.
相关文章推荐
- RESTful API 设计指南
- SpringBoot中使用Swagger生成RESTful规范API文档
- laravel 开发RestFul接口【一、集成三方扩展 - dingo/api】
- 浅析RESTful风格的API
- 三分钟学会API接口设计 之 Compass 的Restful API 快速入门指南 -- 使用Flask框架
- RESTful API 设计指南 (转)
- RESTful API 设计实践指南
- graphql学习(二)Restful API的初步认识
- 如何实现RESTful Web API的身份验证
- RESTful API Design With NodeJS & Restify
- 通过一组RESTful API暴露CQRS系统功能
- 基于Restful接口的网络API接口调用方法
- Ranger Restful API操作用户user和群组group接口
- Python RESTful API 学习(一)
- Django之Restful API
- RESTful API 设计指南
- RESTful API 设计指南
- RESTful API 设计指南
- python Flask实现restful api service
- RESTful API 设计指南