Advertisement
Guest User

Untitled

a guest
Dec 15th, 2018
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.24 KB | None | 0 0
  1. from flask import Flask, request, render_template, url_for
  2. from flask_mail import Mail, Message
  3. from itsdangerous import URLSafeTimedSerializer, SignatureExpired, BadTimeSignature, BadSignature
  4.  
  5. app = Flask(__name__, template_folder='template')
  6.  
  7. mail = Mail(app)
  8.  
  9. s = URLSafeTimedSerializer('rahasiabro')
  10.  
  11. @app.route('/', methods=['GET', 'POST'])
  12. def index():
  13.     if request.method == 'POST':
  14.         email = request.form['email']
  15.         token = s.dumps(email, salt='email-confirm')
  16.  
  17.         msg = Message('Confirm Email', sender='notlikesoft@notlikesoft.com', recipients=[email])
  18.         link = url_for('confirm_email', token=token, _external=True)
  19.         msg.body = 'Your link is {}'.format(link)
  20.         mail.send(msg)
  21.  
  22.         return '<h1>Email yang kamu masukkan {}. The token is {}</h1>'.format(email, token)
  23.     else:
  24.         return render_template('regis.html')
  25.  
  26. @app.route('/confirm_email/<token>')
  27. def confirm_email(token):
  28.     try:
  29.         email = s.loads(token, salt='email-confirm', max_age=20)
  30.     except SignatureExpired:
  31.         return '<h1>Token is expired !</h1>'
  32.     except BadTimeSignature:
  33.         return '<h1>Token is not exists !</h1>'
  34.     except BadSignature:
  35.         return '<h1>Token is not found in server !'
  36.  
  37.     return 'The token is work !'
  38.  
  39. if __name__ == '__main__':
  40.     app.run(debug=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement