I have an iOS Shopping App and want to call a lambda Function for logging. But i dont want to call the lambda function by an API Gateway to save costs. Is there a possibility to
You can invoke lambda functions directly using the AWS iOS SDK. Here is a code snippet
AWSLambda *lambda = [AWSLambda defaultLambda];
AWSLambdaInvocationRequest *invocationRequest = [AWSLambdaInvocationRequest new];
invocationRequest.functionName = @"functionname";
invocationRequest.invocationType = AWSLambdaInvocationTypeRequestResponse;
NSDictionary *parameters = ...
invocationRequest.payload = [NSJSONSerialization dataWithJSONObject:parameters
options:kNilOptions
error:nil];
[lambda invoke:invocationRequest]
The integration test shown here https://github.com/aws-amplify/aws-sdk-ios/blob/335e4d82a641fdb9cdc84773bf115951e850b884/AWSLambdaTests/AWSLambdaTests.m#L110 demonstrates how you can invoke a lamdba function and validate the results.