37,983
社区成员
发帖
与我相关
我的任务
分享
Django 是最流行的Python Web开发框架,本身提供了ORM 数据库封装、模板、视图、路由、权限与鉴权, 管理后台等完整的工具链,各种功能开箱即用。 django-rest-framework (简称DRF) 继承了django框架的上述优点,开发与部署不需要第3方库的支持就可以轻松完成数据库CRUD的 REST API开发,并提供完善的鉴权、分级权限控制、测试页面等功能,可以快速地开发出一套高质量的REST API。
其它的框架,如 Flask,实际应用时,需要集成数据接口库、鉴权、权限管理等第3方库来完成,测试也需要第3方工具支持,在集成配置,代码质量控制上,难度显然增大了,最终投入成本往往反而不及django-rest-framework。当然如果你是有经验的Flask开发人员则另当别论。
本文以学生信息查询功能为例,采用前后端分离架构,要求后端提供RESTFul 接口。
操作 | 请求类型 | 资源请求url | 请求数据 |
---|---|---|---|
列表查询 | GET | http://127.0.0.1:8000/student/ | 无 |
单条查询 | GET | http://127.0.0.1:8000/student/1/ | 无 |
添加记录 | POST | http://127.0.0.1:8000/student/2/ | {'name':‘Jack', 'no':'A001',...} |
更改记录 | PUT | http://127.0.0.1:8000/student/2/ | {'name':‘Jack', 'no':'B001',...} |
删除记录 | DELETE | http://127.0.0.1:8000/student/2/ | 无 |
注意,RESTFul风格url 不需要在 url中添加操作动词,如 http://127.0.0.1:8000/student/list/%E3%80%82 当然这样做也可以,只是推荐方式更简洁。
具体实现代码,请 点击阅读