Dart
Dart
Call an AWS Lambda Function
See more AWS Misc Examples
Demonstrates how to call an AWS Lambda function.Chilkat Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
final rest = CkRest();
// Connect to the Amazon AWS REST server.
// such as https://email.us-west-2.amazonaws.com/
final bTls = true;
final port = 443;
final 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:
rest.connect('itwxyj3vd6gjtaerbfqnfccs2e0fplzh.lambda-url.us-west-2.on.aws', port, bTls, bAutoReconnect);
// Provide AWS credentials for the REST call.
final authAws = CkAuthAws();
authAws.accessKey = 'AWS_ACCESS_KEY';
authAws.secretKey = 'AWS_SECRET_KEY';
// the region should match our domain above..
authAws.region = 'us-west-2';
authAws.serviceName = 'lambda';
rest.setAuthAws(authAws);
final json = CkJsonObject();
json.updateString('name', 'Benny');
rest.addHeader('Content-Type', 'application/json');
final sbRequestBody = CkStringBuilder();
json.emitSb(sbRequestBody);
final sbResponseBody = CkStringBuilder();
try {
rest.fullRequestSb('POST', '/', sbRequestBody, sbResponseBody);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
final statusCode = rest.responseStatusCode;
if (statusCode >= 400) {
print('Response Status Code: $statusCode');
print('Response Body: ${sbResponseBody.getAsString()}');
print('Failed.');
return;
}
print('Response Body:');
print(sbResponseBody.getAsString());
}
JavaScript
export const handler = async (event) => {
let body = "Hello World";
if (event.body) {
const input = JSON.parse(event.body);
if (input.name) {
body = "Hello " + input.name;
}
}
return {
statusCode: 200,
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
message: body
})
};
};