Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from flask import Flask, request, render_template, url_for
- from flask_mail import Mail, Message
- from itsdangerous import URLSafeTimedSerializer, SignatureExpired, BadTimeSignature, BadSignature
- app = Flask(__name__, template_folder='template')
- mail = Mail(app)
- s = URLSafeTimedSerializer('rahasiabro')
- @app.route('/', methods=['GET', 'POST'])
- def index():
- if request.method == 'POST':
- email = request.form['email']
- token = s.dumps(email, salt='email-confirm')
- msg = Message('Confirm Email', sender='notlikesoft@notlikesoft.com', recipients=[email])
- link = url_for('confirm_email', token=token, _external=True)
- msg.body = 'Your link is {}'.format(link)
- mail.send(msg)
- return '<h1>Email yang kamu masukkan {}. The token is {}</h1>'.format(email, token)
- else:
- return render_template('regis.html')
- @app.route('/confirm_email/<token>')
- def confirm_email(token):
- try:
- email = s.loads(token, salt='email-confirm', max_age=20)
- except SignatureExpired:
- return '<h1>Token is expired !</h1>'
- except BadTimeSignature:
- return '<h1>Token is not exists !</h1>'
- except BadSignature:
- return '<h1>Token is not found in server !'
- return 'The token is work !'
- if __name__ == '__main__':
- app.run(debug=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement