CkPython
CkPython
Call an AWS Lambda Function
See more AWS Misc Examples
Demonstrates how to call an AWS Lambda function.Chilkat CkPython Downloads
import sys
import chilkat
success = False
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
rest = chilkat.CkRest()
# Connect to the Amazon AWS REST server.
# such as https://email.us-west-2.amazonaws.com/
bTls = True
port = 443
bAutoReconnect = True
# -------------------------------------------------------------------------------------------
# Note: The source of the lambda function (hosted on AWS) is shown at the bottom of this page.
# --------------------------------------------------------------------------------------------
# If your lambda function URL is: https://itwxyj3vd6gjtaerbfqnfccs2e0fplzh.lambda-url.us-west-2.on.aws/
# then use just the domain part here:
success = rest.Connect("itwxyj3vd6gjtaerbfqnfccs2e0fplzh.lambda-url.us-west-2.on.aws",port,bTls,bAutoReconnect)
# Provide AWS credentials for the REST call.
authAws = chilkat.CkAuthAws()
authAws.put_AccessKey("AWS_ACCESS_KEY")
authAws.put_SecretKey("AWS_SECRET_KEY")
# the region should match our domain above..
authAws.put_Region("us-west-2")
authAws.put_ServiceName("lambda")
rest.SetAuthAws(authAws)
json = chilkat.CkJsonObject()
json.UpdateString("name","Benny")
rest.AddHeader("Content-Type","application/json")
sbRequestBody = chilkat.CkStringBuilder()
json.EmitSb(sbRequestBody)
sbResponseBody = chilkat.CkStringBuilder()
success = rest.FullRequestSb("POST","/",sbRequestBody,sbResponseBody)
if (success == False):
print(rest.lastErrorText())
sys.exit()
statusCode = rest.get_ResponseStatusCode()
if (statusCode >= 400):
print("Response Status Code: " + str(statusCode))
print("Response Body: " + sbResponseBody.getAsString())
print("Failed.")
sys.exit()
print("Response Body:")
print(sbResponseBody.getAsString())