def confirm_token(self, token, expiration=3600):
from server import app
serializer = URLSafeTimedSerializer(app.config['SECRET_KEY'])
session = SessionManager.Session()
try:
email = serializer.loads(
token,
salt=app.config['SECRET_PASSWORD_SALT'],
max_age=expiration
)
if (email == self.email) and (not self.email_confirmed):
self.email_confirmed = True
user = session.query(User).filter(User.id == self.id).one()
user.email_confirmed = True
session.commit()
rpc_request.send('email_changed', {'email': self.email, 'user_id': user.id})
return json_resp({'message': 'ok'})
else:
raise ClientError('Invalid Token')
except:
raise ClientError('Invalid Token')
finally:
SessionManager.Session.remove()
评论列表
文章目录