본문 바로가기
Q&A해결2026년 7월 15일1분 읽기

요청 body를 스트림으로 직접 읽는데 한글이 가끔 깨져서 들어옵니다

b
buffer_yuna
조회 623댓글 4

웹훅 수신 엔드포인트를 body-parser 안 쓰고 req.on('data')로 직접 청크 모아서 처리하고 있어요. 평소엔 잘 되는데 payload가 크거나 한글이 많으면 가끔 글자가 깨져서 들어옵니다. "결제완료"가 "결제완�"처럼 마지막 글자가 이상한 문자로 바뀌는 식이에요.

let data = ''
req.on('data', chunk => { data += chunk.toString('utf8') })
req.on('end', () => {
  const body = JSON.parse(data) // 가끔 여기서 SyntaxError
})

payload가 작으면 재현이 안 되고 커질 때만 터져서 한참 헤맸습니다. 인코딩을 utf8로 명시했는데 대체 왜 깨질까요?

댓글 0

아직 댓글이 없습니다.
Ctrl+Enter로 등록