美多商城项目接口分析

一、图片验证码接口

1、请求方式

 GET /image_codes/(?P<image_code_id>[\w-]+)/

2、请求参数

image_code_id
uuid字符串
图片验证码编号
必须存在

3、返回数据

验证码图片

4、流程

1)、浏览器生成一个uuid,也就是image_code_id,通过路由传入到后端get方法中
(2)、后端生成图片以及验证码文本,文本写入了redis中,图片传到前端显示

二、短信验证码接口

1、请求方式

GET /sms_codes/(?P<mobile>1[3-9]\d{9})/?image_code_id=xxx&text=xxx

2、请求参数

参数            类型        是否必须       说明
mobile          str        是             手机号
image_code_id   uuid字符串  是            图片验证码编号
text            str         是           用户输入的图片验证码

3、返回数据

JSON格式  message

4、流程

(1)、mobile手机号做为参数,image_code_id和text以请求的查询字符串格式发送至后端get方法接收
(2)、用redis中的text(图片验证码)和用户输入的验证码进行比较
(3)、image_code_id和text无误,就开始生成短信验证码,将短信验证码写入数据库,并返回至前端

三、判断用户名存在接口

1、请求方式

GET usernames/(?P<username>\w{5,20})/count/

2、请求参数

参数        类型    是否必传    说明
username    str     是         用户名

3、返回数据

{
    "username": "itcast",
    "count": "1"
}

4、流程

(1)、用户名是否存在的判断交给前端实现,后端只需要返回用户名的数量
(2)、前端传入用户名,通过路由传给后端,后端通过User对象的模型类去查询该用户名的数量,并返回数量和用户名至前端,前端进行判断

四、判断手机号存在接口

1、请求方式

 GET mobiles/(?P<mobile>1[3-9]\d{9})/count

2、请求参数

参数        类型    是否必传    说明
mobile  str     是         手机号

3、返回数据

{
    "mobile": "13521591251",
    "count": "0"
}

4、流程

(1)、手机号是否存在的判断交给前端实现,后端只需要返回手机号的数量
(2)、前端传入手机号,通过路由传给后端,后端通过User对象的模型类去查询该手机号的数量,并返回数量和手机号至前端,前端进行判断

五、注册接口

1、请求方式

POST /users/

2、请求参数

参数名      类型    是否必须    说明
username    str    是          用户名
password    str    是          密码
password2   str    是          确认密码
sms_code    str    是          短信验证码
mobile      str    是          手机号
allow       str    是          是否同意用户协议

3、返回数据

{
    "id": 9,
    "username": "python8",
    "mobile": "18512345678",
}

4、流程

(1)、自定义一个序列化器去验证数据
(2)、返回数据

猜你喜欢

转载自blog.csdn.net/uzizi/article/details/81278496