Flask RESTful Web服务的开发套路总结

这两天看了《Flask Web开发》一书的第14章,关于 Flask RESTful Web服务的相关内容,有些地方还不太完全理解,这里只记录自己总结出来的一点感想,很有局限性,仅作记录和参考。

REST架构 的本质是将一切内容都当作资源对待,所以,针对不同的资源,后台应该用不同的路由进行管理,而其中的简单套路总结于此:

  • 资源管理动作的分类:
    • 查询单项/列表资源:列出该类/该项资源
    • 新建/编辑资源:创建/修改资源内容,可能需要提供相应权限
    • 查询关联资源: 多个类型的资源因业务相互关联,如:作者——文章——评论
  • 资源管理动作的路由代码编写套路:

    • 查询单项资源:
      1. 查询资源对象 get_or_404(id)
      2. return jsonify(资源.to_json())

    • 查询列表资源:
      1. 获取当前查询的页码 page
      2. 根据 page 查询当前页所对应的数据集
      3. 根据当前页位置指定前后页url
      4. return jsonify({资源列表, 前一页url, 后一页url, 数据记录总数})

    • 新建资源:
      1. 根据请求发来的数据创建资源数据
      2. 检查当前用户是否有操作权限
      3. 存入数据库
      4. return jsonify(资源.to_json()), 201, {资源url}

    • 编辑资源:
      1. 查询资源对象 get_or_404(id)
      2. 检查当前用户是否有操作权限
      3. 将修改写入数据库
      4. return jsonify(资源.to_json())

    • 查询关联资源:
      1. 查询关联关系中的主体资源对象 get_or_404(id)
      2. 获取当前查询的页码 page
      3. 根据 page 查询当前页所对应的数据集
      4. 根据当前页位置确定前后页url
      5. return jsonify({资源列表, 前一页url, 后一页url, 数据记录总数})

以上几种就是常见的Flask RESTful Web服务开发的基本套路。以后有遇到新的或需要修改的会逐步更新。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值