# this function takes in "input_string" and return the sha256 hash of that string import json import hashlib def lambda_handler(event, context): # Get input_string from query params, body, or path input_string = None # Try query parameters first if 'queryStringParameters' in event and event['queryStringParameters']: input_string = event['queryStringParameters'].get('input_string') # Try request body if not input_string and 'body' in event: try: body = json.loads(event['body']) if isinstance(event['body'], str) else event['body'] input_string = body.get('input_string') except: input_string = event['body'] # Try path parameter as fallback if not input_string and 'pathParameters' in event: input_string = event['pathParameters'].get('input_string', event['pathParameters'].get('proxy')) if not input_string: return { 'statusCode': 400, 'headers': {'Content-Type': 'application/json'}, 'body': json.dumps({'error': 'input_string required'}) } # Calculate SHA256 sha256_hash = hashlib.sha256(input_string.encode('utf-8')).hexdigest() return { 'statusCode': 200, 'headers': { 'Content-Type': 'application/json' }, 'body': json.dumps({ 'input_string': input_string, 'sha256': sha256_hash }) }