in lambda/app.py [0:0]
def lambda_handler(event, _):
method = event['httpMethod']
path = event['path']
body = json.loads(event['body'])
if method == 'POST' and START_PATTERN.match(path):
status_code, response = start_challenge(body)
elif method == 'PUT' and PUT_FRAME_PATTERN.match(path):
challenge_id = get_challenge_id(event)
status_code, response = execute_if_token_is_valid(body['token'], challenge_id, put_challenge_frame,
challenge_id, body)
elif method == 'POST' and VERIFY_PATTERN.match(path):
challenge_id = get_challenge_id(event)
status_code, response = execute_if_token_is_valid(body['token'], challenge_id, verify_challenge, challenge_id)
return {
'statusCode': status_code,
'headers': {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'OPTIONS,POST',
'Access-Control-Allow-Headers': 'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token'
},
'body': json.dumps(response)
}