aws lambda nodejs 환경에서 클라이언트 입력 event JSON.parse 시 에러 해결

sig03
Jul 26, 2022

--

aws lambda 에서 nodejs 환경을 돌려보고 있다. lambda 함수에서 query 스트링으로 값을 받아 api 호출 결과를 리턴하는데 클라이언트의 요청값인 event에 접근하려니 계속 에러가 난다.

json으로 인식을 못해서 그런가 JSON.parse(event) 로 감싸주면 Unexpected token u in JSON at position 0 와 같은 에러 발생. 오류 내용을 검색해보니 json 값이 없을때 나는 에러란다.

거기서 힌트를 얻어 옵셔널 체이닝으로 값을 처리했더니 잘 된다. 아마 aws lambda의 nodejs 컴파일 환경이 자체적으로 타입을 체크하고 있어서 발생한 문제가 아닌가 싶다.

exports.handler =  async function(event, context) {  try {
const userRequest = event?.queryStringParameters?.query;
... }
...

--

--

sig03
sig03

No responses yet