def lambda_handler()

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)
    }