图形验证码接口设计和定义
1. 图形验证码后端接口设计
1.请求方式
| 选项 | 方案 |
|---|---|
| 请求方法 | GET |
| 请求地址 | image_codes/<uuid>/ |
2.请求参数:路径参数
| 参数名 | 类型 | 是否必传 | 说明 |
|---|---|---|---|
| uuid | string | 是 | 唯一编号 |
3.响应结果:
image/jpeg

2. 图形验证码后端接口定义
1.图形验证码视图
from django.views import View
class ImageCodeView(View):
"""图形验证码"""
def get(self, request, uuid):
"""
:param request: 请求对象
:param uuid: 唯一标识图形验证码所属于的用户
:return: image/jpeg
"""
pass
2.总路由
urlpatterns = [
...
# 添加验证码 verifications 总路由
path('', include('apps.verifications.urls')),
]
3.子路由
from django.conf.urls import url
from . import views
urlpatterns = [
# 图形验证码
path('image_codes/<uuid:uuid>/', views.ImageCodeView.as_view()),
]
4.添加自定义转换器
class UUIDConverter:
"""自定义路由转换器去匹配手机号"""
# 定义UUID的正则表达式
regex = '[\w-]+'
def to_python(self, value):
# to_python:将匹配结果传递到视图内部时使用
return str(value)
# 在工程的总路由出添加
from utils.converters import UUIDConverter
from django.urls import register_converter
register_converter(UUIDConverter,'uuid')