영문·한글·이모지 본문을 바꾸어 글자 수와 UTF-8 바이트 수를 비교하고, Content-Length에 들어갈 값을 검산합니다.
입문게시 2026-10-15읽기·실험 약 9분확인 문제 2개규칙 기반 실행한국논리학협회 자체 제작제작·검수 LTCT 편집부
주제 이해를 돕기 위한 AI 생성 이미지 · LTCT 자체 제작오늘의 질문
본문이 ‘가’ 한 글자라면 Content-Length도 1일까요?
한글 한 글자가 UTF-8 세 바이트로 인코딩되어 Content-Length는 글자 하나가 아니라 세 옥텟을 세는 관계도 · 한국논리학협회 자체 제작그림 크게 보기 ↗01
Content-Length는 글자가 아니라 옥텟을 셉니다
HTTP(에이치티티피, 웹 전송 규약) 메시지의 Content-Length(콘텐츠 렝스, 본문 길이)는 본문과 관련된 데이터 길이를 8비트 바이트 단위인 옥텟 수로 적습니다. 영문 A는 UTF-8에서 한 바이트이므로 글자 수와 바이트 수가 같습니다. 그러나 한글 가는 세 바이트이고, 이모지 일부는 네 바이트입니다.
따라서 본문이 가 한 글자라고 Content-Length: 1을 보내면 실제 세 바이트보다 짧게 선언한 셈입니다. 수신자가 그 숫자를 메시지 경계로 사용하면 뒤 두 바이트가 다음 데이터처럼 남아 파싱 오류나 연결 문제를 만들 수 있습니다.