def post(self):
'''Endpoint for registering and getting auth token for new user'''
parser = reqparse.RequestParser()
parser.add_argument('username', required=True)
parser.add_argument('email', required=True)
parser.add_argument('password', required=True)
args = parser.parse_args()
# check username and email uniqueness
duplicate = db.session.query(User).filter((User.username==args.username) | (User.email==args.email)).first()
if duplicate is not None:
return redirect('/?message=%s' % 'Account already exists for this email.')
hash_obj = hashlib.sha256()
hash_obj.update(args.password.encode('utf-8'))
user_obj = User(
username=args.username,
email=args.email,
password_hash=hash_obj.hexdigest()
)
db.session.add(user_obj)
db.session.commit()
# allocate and maintain session token
token = os.urandom(256)
tokens[token] = args.email
session['token'] = token
session['username'] = args.username
return redirect('/')
rest_api.py 文件源码
python
阅读 22
收藏 0
点赞 0
评论 0
评论列表
文章目录