asksuite-core
Version:
30 lines (25 loc) • 640 B
JavaScript
const AWS = require('aws-sdk');
class AWSLambdaCaller {
constructor(awsConfig) {
AWS.config.update(awsConfig);
}
async call(jsonObj, functionName) {
const lambda = new AWS.Lambda();
const params = {
FunctionName: functionName,
Payload: JSON.stringify(jsonObj),
};
try {
return await lambda
.invoke(params)
.promise()
.then(value => {
return JSON.parse(value.Payload);
});
} catch (e) {
console.warn('Error, cannot invoke lambda ' + functionName, e);
throw e;
}
}
}
module.exports = AWSLambdaCaller;