Skip to content
On this page

Encoding

클라이언트에서 서버로 요청하는 리소스의 URL은 ASCII 코드의 첫 번째 128개의 문자만을 포함할 수 있습니다.

여기서 ASCII 코드에 속하지 않은 문자들은 UTF-8 방식으로 인코딩이 이루어져야 합니다.

URL 상에서 인코딩된 문자는 1바이트 단위마다 앞에 %를 붙입니다.

사전 UTF-8 인코딩은 다음과 경우에 수행합니다.

  • 표준 ASCII 코드에 포함되지 않을 경우(예: 한글)
  • #, <, >, {, }, [, ], ~, 스페이스 중 하나인 경우
  • /, ?, :, @, &과 같은 reserved 문자가 본래 목적 외에 사용될 경우

TIP

인코딩 없이 그대로 쓰이는 문자는 다음과 같습니다.

  • 0 ~ 9
  • A ~ Z, a ~ z
  • $, -, _, ., +, !, ', (, ), ", , 중 하나
  • reserved 문자들이 본래 목적에 맞게 사용된 경우

Unicode

지구 상에 존재하는 모든 문자(언어, 특수기호, 이모티콘 등을 포함해서)들을 모두 표현할 수 있는 일관된 코드표(character set)입니다.

Unicode 리스트

UTF-8

Unicode를 컴퓨터에 저장할 수 있는 비트패턴으로 인코딩하기 위한 방법들 중 하나입니다.

가변길이 인코딩(원본 유니코드의 길이에 따라 결과값의 길이가 달라지는) 방식이라 1바이트에서 4바이트까지 길이를 가질 수 있습니다.

인코딩할 때는 아래 테이블을 참조합니다.

UTF Conversion Table

TIP

JS string 은 UTF-16 방식으로 인코딩되어 메모리에 저장됩니다.

ASCII Code

특정 문자를 8비트 패턴으로 인코딩하는 방식입니다.

ASCII 코드로 인코딩된 결과물은 바로 컴퓨터에 저장할 수 있는 비트패턴을 가지지만 유니코드는 컴퓨터에 저장되기 전에 먼저 인코딩이 이루어져야 한다는 점이 다릅니다.

ASCII Code 리스트