Django框架
拓展 手機驗證碼簡單實現
在views.py中加入如下代碼
注: 獲取手機驗證碼的時候需要先判斷是否爲POST請求格式
import re, random
from django.http import JsonResponse, HttpResponse
def mobile_verification(request):
print(request.method) # 返回用戶的請求方式
if request.method == 'POST':
telephone = request.POST.get('telephone')
if not telephone:
return JsonResponse(data={'status_code': '0', 'state': '手機號不能爲空'})
if re.match(r'^1[3-8]\d{9}$', telephone):
# 判斷圖片驗證碼是否正確
# 之後補上
# 生成短信驗證碼
str_sms = ''
for _ in range(6):
str_sms += random.randint(0, 9)
# 發送短信驗證碼
# 這裏的接口之後補上
mobile_conn = get_redis_connection()
mobile_conn.setex(str(telephone), 300, str_sms)
return JsonResponse(data={'status_code': '1', 'state': f'短信驗證碼爲:{str_sms}'})
else:
# 返回json的數據給前端
return JsonResponse(data={'status_code': '0', 'state': '手機號格式有誤請重新輸入'})
else:
return HttpResponse('非法訪問')
***注: 使用postman
軟件時要先註釋掉settings.py中的'django.middleware.csrf.CsrfViewMiddleware'
***