def _default_auth_request_handler():
if not request.headers['Content-Type']:
raise JWTError("Bad Request", "Missing Content-Type", 400)
if request.headers['Content-Type'] != "application/json":
raise JWTError("Bad Request", "Invalid Content-Type", 400)
data = request.get_json()
username = data.get(current_app.config.get('JWT_AUTH_USERNAME_KEY'), None)
password = data.get(current_app.config.get('JWT_AUTH_PASSWORD_KEY'), None)
exp_delta = data.get(current_app.config.get('JWT_AUTH_EXPDELTA_KEY'), None)
criterion = [username, password, len(data) >= 2]
if not all(criterion):
raise JWTError('Bad Request', 'Invalid credentials')
identity = _jwt.authentication_callback(username, password)
if identity:
access_token = _jwt.jwt_encode_callback(identity, exp_delta)
return _jwt.auth_response_callback(access_token, identity)
else:
raise JWTError('Bad Request', 'Invalid credentials')
评论列表
文章目录