회사 프로젝트작업중 람다를 호출하는 일이 있어서 간단하게 코드를 작성해봤다.
const region = {
"accessKeyId": "XXXXXXXXXXXXXX",
"secretAccessKey": "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY",
"region": "ap-northeast-2"
};
const lambda = new LambdaClient(region);
// Set the parameters for the function call
const payload = JSON.stringify({
"src_url": result.video_url,
"times" : (start_time + ", " + play_time).toString() //"1822, 5, 1874, 5, 2029, 5, 2055, 5, 2124, 5, 2499, 5, 2675, 5, 3689, 5, 2499, 5"
});
const params = {
FunctionName: 'MergeDownload', // replace with your function name
Payload: payload
};
console.log(payload);
// Call the Lambda function
const command = new InvokeCommand(params);
const result2 = await lambda.send(command, function (err, data) {
let ret = {}
if (err) {
console.log("ERROR");
console.error(err);
} else {
const string = new TextDecoder().decode(data.Payload);
ret.dest_url = string.dst_url;
}
helper.api_result(res, req, result2);
});
먼저 권한 설정을 위해서 계정권한 accesskey와 secretkey를 설정하고 lambdaClient 를 호출한다.
payload는 용도에 맞게 작성하고 미리 생성된 람다 함수의 이름을 통해서 호출하면 간단하게 가능하다.
여기서 리턴되는 값이 그냥 string이 아니라 bytearray값이라서 textdecoder로 디코딩을 한번 해줘야 원하는 응답코드를 가지고 올 수 있다.
끝
CRA(Create React APP)에서 캐시 안되는 문제 해결하기 (0) | 2023.04.03 |
---|---|
Javascript 문자열 합치기 ( +, concat, join) 성능 테스트 (1) | 2023.03.02 |
댓글 영역