Ruby
Ruby
Call an AWS Lambda Function
See more AWS Misc Examples
Demonstrates how to call an AWS Lambda function.Chilkat Ruby Downloads
require 'chilkat'
success = false
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
rest = Chilkat::CkRest.new()
# 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.new()
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.new()
json.UpdateString("name","Benny")
rest.AddHeader("Content-Type","application/json")
sbRequestBody = Chilkat::CkStringBuilder.new()
json.EmitSb(sbRequestBody)
sbResponseBody = Chilkat::CkStringBuilder.new()
success = rest.FullRequestSb("POST","/",sbRequestBody,sbResponseBody)
if (success == false)
print rest.lastErrorText() + "\n";
exit
end
statusCode = rest.get_ResponseStatusCode()
if (statusCode >= 400)
print "Response Status Code: " + statusCode.to_s() + "\n";
print "Response Body: " + sbResponseBody.getAsString() + "\n";
print "Failed." + "\n";
exit
end
print "Response Body:" + "\n";
print sbResponseBody.getAsString() + "\n";