django电话登录:使用otp登录
django-phone-login的Python项目详细描述
django电话登录
django电话登录使用django send sms发送短信。
django phone login提供电话号码登录,无需附加 要记住的密码。这是扩大客户群的一个简单方法。 没有任何麻烦。
安装django电话登录
django手机登录是为django创建的。
pypi,使用pip安装:
pip install django-phone-login
如果要手动安装:
git clone git@github.com:wejhink/django-phone-login.git
cd django-phone-login/
pip install -r requirements.txt
python setup.py install
说明
INSTALLED_APPS+=[...# Make sure to include the default installed apps here.'phone_login','rest_framework','rest_framework.authtoken',]REST_FRAMEWORK={'DEFAULT_AUTHENTICATION_CLASSES':('rest_framework.authentication.BasicAuthentication','rest_framework.authentication.TokenAuthentication',)}AUTHENTICATION_BACKENDS=['phone_login.backends.phone_backend.PhoneBackend','django.contrib.auth.backends.ModelBackend']# Make sure you also have backend Django Templates and APP_DIRS True, if you want to use default OTP Template.TEMPLATES=[{'BACKEND':'django.template.backends.django.DjangoTemplates','APP_DIRS':True,...},]# Configure the SENDSMS_BACKEND (for django-sendsms integration)SENDSMS_BACKEND='myapp.mysmsbackend.SmsBackend'#(defaults to 'sendsms.backends.console.SmsBackend')SENDSMS_FROM_NUMBER="+XXxxxxxxxxxx"SENDSMS_ACCOUNT_SID='ACXXXXXXXXXXXXXX'SENDSMS_AUTH_TOKEN='xxxxxxxx'
添加到url
添加下面的urls.py
urlpatterns=[url(r'^phone_login/',include('phone_login.urls',namespace='phone_login'),),]
设置中可自定义的字段。
PHONE_LOGIN_ATTEMPTS=10PHONE_LOGIN_OTP_LENGTH=6PHONE_LOGIN_OTP_HASH_ALGORITHM='sha256'
流量
- 用户输入phone_number并发送请求以生成 secret code。
- django-phone-login以短信形式向手机发送secret_code。 号码。
- 用户发送secret_code到服务器进行验证。
- django-phone-login验证并使用发送token作为响应 DRF3。
为什么使用django电话登录?
- 电话号码登录,无需密码。
- 通过电话号码注册。
- 基于移动的用户身份验证。