Django用twilio形成短信确认

时间:2016-06-07 21:23:17

标签: django twilio

大约2年我正在练习Django网站开发,现在我必须通过短信验证码确认表单提交。

正如我在一些论坛上所了解的那样,人们使用twilio,但我无法解决必须将它们绑定在一起以使其工作

1 个答案:

答案 0 :(得分:1)

Ilyas,​​将来看看你尝试过的例子会有所帮助。但我们确实有教程可以帮助您快速入门。 SMS 2FA身份验证教程(虽然为Flask编写)也应该是Django应用程序的一个很好的模型。

https://www.twilio.com/docs/tutorials/walkthrough/sms-two-factor-authentication/python/flask

首先,我们使用电子邮件和密码验证用户。

其次,我们使用移动设备验证,向他们发送一次性验证码。

要发送验证码,我们依赖sending SMS in Python

的基础知识
def send_sms(to_number, body):
    account_sid = app.config['TWILIO_ACCOUNT_SID']
    auth_token = app.config['TWILIO_AUTH_TOKEN']
    twilio_number = app.config['TWILIO_NUMBER']
    client = TwilioRestClient(account_sid, auth_token)
    client.messages.create(to=to_number,
                           from_=twilio_number,
                           body=body)

我们通过以下形式处理用户注册:

@app.route('/sign-up', methods=['GET', 'POST'])
def sign_up():
    form = SignUpForm()
    if form.validate_on_submit():
        user = User.save_from_dict(form.as_dict)
        session['user_email'] = user.email
        send_confirmation_code(user.international_phone_number)
        return redirect(url_for('confirmation'))
    return render_template('signup.html', form=form)

我希望这个例子可以帮助你解决你的Django项目。