Django拓展 手機驗證碼簡單實現

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' ***

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章