前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >慕课网Flask构建可扩展的RESTful API-2. REST基本特征

慕课网Flask构建可扩展的RESTful API-2. REST基本特征

作者头像
Meet相识
发布2018-09-12 16:57:24
5750
发布2018-09-12 16:57:24
举报
文章被收录于专栏:技术专栏技术专栏

2. REST基本特征

1.REST的最基本特征

我们把服务器提供的服务统一称为资源。 我们可以使用URL来定位资源,如/v1/book/user/1 来定位一个用户 定位到资源以后,可以使用HTPP动词来操作资源,类似使用DDL操作数据库。

image.png

对于视图函数的URL,尽量不应该包含动词,因为URL是用来定位资源的,例如我们之前的试图函数,应该这样改写

代码语言:javascript
复制
@api.route('', methods=['GET'])
def get_book():
return 'get book'


@api.route('', methods=['POST'])
def create():
return 'create book'

2.为什么标准的REST不适合内部开发

REST的使用场景有两个:内部开发API,开放API。 标准的REST比较适合开放性的API。只负责提供数据,不负责业务逻辑

  1. 由于内部的开发,业务逻辑非常复杂,想用简单的四个接口来标示所有的业务逻辑,基本上是不可能的
  2. REST的接口粒度比较粗(返回的资源属性比较多;服务器不会负责处理数据),这样前端的开发是不太方便的
  3. 标准的REST会造成HTTP请求的数量大幅度的增加

3.建议

  • 尽量遵从REST的设计风格规范
  • 要灵活一些,如果前端要考虑业务逻辑的话,我们就不要遵从资源的限制了,应该让API具有业务逻辑的性质
  • 如果前端需要几个资源合并在一起的数据,那么我们就为前端定制一个合并数据的接口
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.06.16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2. REST基本特征
    • 1.REST的最基本特征
      • 2.为什么标准的REST不适合内部开发
        • 3.建议
        相关产品与服务
        数据库
        云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档