全网第一篇系列讲述Django线上项目实战的文章。
上一篇我们主要讲了一下环境的搭建,那么这一节,我们要说这么几个东西:
- 什么是RESTful API
- 在Django中如何使用MongoDB
- 编写Gua的API
啥是RESTful?
现在一提起来API,就都会提到一个叫 RESTful 的概念。那到底啥事 RESTful API 呢?
最通读是讲法,就是 RESTful API 就是正确是使用 http 请求
。只要是用正确的姿势,正确的使用http,就是 RESTful API。
RESTful API 有以下几大特征:
- 请使用正确的http request method来请求数据。GET/POST/PUT/DELETE/PATCH;
- 面向资源编程,通过API提交的参数最好是名词,就像下面的gua:
http://<yourdomain.com>/gua
- API应该体现版本,需要在URL中加入v1,v2这种版本号:
http://<yourdomain.com>/v1/gua
- 需要体现API,所以最好加上api字样:
http://<yourdomain.com>/api/v1/gua
- 使用 HTTPS:
https://<yourdomain.com>/api/v1/gua
- 响应式设置代码状态;
- API的参数,可以加入变量:
http://<yourdomain.com>/api/v1/gua?num=100100&style=1
- 针对不同的method,对应的返回值要规范:
GET: 返回列表或者单条数据
POST: 新增的数据
PUT: 返回更新数据
PATCH: 局部更新,返回更新数据
DELETE: 返回空文档
- 如果有错误信息,则需要在返回的数据里面,将错误码写在
code
里; - 返回的数据详细内容,放在
data
里面:
{
"code":10001,
"data": {
"id": 1,
"name": "peekpa"
}
}
以上就是RESTful API的规范,实际操作起来,可能多多少少会有出入,请以具体的需求为准来设计API。
Django和MongoDB的结合
一般情况,Django使用的都是 RDB(Relational Database),