-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[16장] 국제화 #13
Comments
국제적인 콘텐츠를 다루기 위해 필요한 HTTP 지원
문자집합과 HTTP차셋(Charset)은 글자를 비트로 변환하는 인코딩이다
문자집합과 인코딩은 어떻게 동작하는가
잘못된 차셋은 잘못된 글자들을 낳는다
표준화된 MIME 차셋 값
Content-Type charset 헤더와 META 태그
Accept-Charset 헤더
다중언어 문자 인코딩에 대한 지침문자집합 용어
‘차셋(Charset)’은 형편없는 이름이다
문자
글리프(glyphs), 연자(ligatures) 그리고 표현 형태
코딩된 문자집합(Coded Character Set)
문자 인코딩 구조
언어 태그와 HTTP
Content-Laguage 헤더
Accept-Language 헤더
언어 태그의 종류
서브태그
대소문자의 구분 및 표현
IANA 언어 태그 등록
첫 번째 서브태그: 이름공간
두 번째 서브태그: 이름공간
나머지 서브태그: 이름공간
국제화된 URI
국제적 가독성 vs 의미 있는 문자들
URI에서 사용될 수 있는 문자들
이스케이핑과 역이스케이핑
기타 고려사항헤더와 명세에 맞지 않는 데이터
날짜
도메인 이름
|
국제화국제적인 콘텐츠를 다루기 위해 필요한 HTTP 지원HTTP 메시지는 어떤 콘텐츠든 담을 수 있다. HTTP의 엔티티 본문은 그저 비트 모음이다. 비트 모음을 콘텐츠로 만들기 위한 정보 제공
문자집합과 HTTPCharset은 글자를 비트로 변환하는 인코딩이다
문자집합과 인코딩은 어떻게 동작하는가
잘못된 Charset은 잘못된 글자들을 낳는다
표준화된 MIME 차셋 값
Content-Type charset 헤더와 META 태그
Accpet-Charset 헤더
다중언어 문자 인코딩에 대한 지침문자집합 용어
MIME 차셋 태그는 단순히 문자 집합 뿐 아니라 비트-문자 변환 인코딩 알고리즘의 개념을 포함한다 언어 태그와 HTTP: 언어에 이름을 붙이기 위한 짧고 표준화된 문자열 Content-Language 헤더
Accept-Language
서브태그 언어 태그는 하나 이상의 서브태그로 이루어진다
첫 번째 서브태그: 이름공간
두 번째 서브태그: 이름공간
나머지 서브태그: 이름공간
국제화된 URIURI는 국제화를 별로 지원하지 않음. 리소스 식별자의 가독성과 공유 가능성의 보장을 위해 ASCII 문자들의 제한된 집합으로 이루어지게 됨 URI에서 사용될 수 있는 문자들 US-ASCII 의 부분집합
이스케이핑과 역이스케이핑(unescaping)
기타 고려사항헤더와 명세에 맞지 않는 데이터
날짜
도메인 이름
|
국제적인 콘텐츠를 다루기 위해 필요한 HTTP 지원
문자 집합과 HTTP차셋(Charset)
문자집합과 인코딩
표준화된 MIME 차셋 값
다중언어 문자 인코딩에 대한 지침
언어 태그와 HTTP
국제화된 URI
기타 고려사항
|
국제적 콘텐츠를 다루기 위해 필요한 HTTP 지원
문자집합과 HTTP
[ Accept-Charset 헤더 ]
다중언어 문자 인코딩에 대한 지침[ 문자 집합 용어 ]
언어 태그와 HTTP
[ Content-Language 헤더 ]
[ Accept-Language 헤더 ]
[ 대소문자 구분 및 표현 ]
국제화 된 URI
[ 국제적 가독성 vs 의미 있는 문자들 ]
[ URI에서 사용될 수 있는 문자들 ]
[ 이스케이핑과 역이스케이핑 ]
기타 고려사항[ 헤더와 명세에 맞지 않는 데이터 ]
[ 날짜 ]
[ 도메인 이름 ]
|
국제적인 콘텐츠를 다루기 위한 HTTP 지원
Charset어떻게 엔티티 콘텐츠 비트들을 특정 문자 체계의 글자들로 바꾸는지 알려준다. => iso-8859-6 디코딩 기법을 사용해라! 문자 집합과 인코딩비트를 디코딩하는 과정
다만, HTTP는 문제 데이터 및 관련된 차셋 라벨의 전송만 신경쓰고, 글꼴 등은 브라우저가 담당한다. 또한 같은 문자 코드이더라도 잘못된 차셋을 사용하면 잘못된 글자로 변환될 수 있다. Charset과 META 태그HTML에서 문자집합은 META 태그에서 찾을 수 있다. <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-2022-jp"> 기본은 iso-8859-1로 가정한다. Accept-charset 헤더클라이언트는 자신이 어떤 문자 체계를 지원하는지 Accept-charset 헤더를 통해 알려준다. 다중언어 문자 인코딩문자 집합 용어
[Charset은 형편없는 이름이다] 언어 태그와 HTTP헤더를 통한 명시
언어 태그의 종류
국제화된 URIURI는 국제화를 별로 지원하지 않는다. 국제적 가독성 vs 의미 있는 문자들리소스 식별자의 가독성과 공유 가능성의 보장을 위해 ASCII 문자들의 제한된 집합으로 이루어 지게 되었다. -> 국제적 가독성은 떨어진다. URI에서 사용될 수 있는 문자들이스케이핑과 역 이스케이핑지원하지 않는 글자를 안전하게 URI에 삽입할 수 있는 방법
기타 고려사항국제화된 HTTP 애플리케이션을 작성할 때 명심해야 할 사항들
|
여러 언어와 문자로 된 국제 문서들의 처리 및 전송을 지원 국제적인 콘텐츠클라이언트는 서버에게 어떤 언어를 이해할 수 있고, 어떤 알파벳의 코딩 알고리즘이 있는지 알려준다
문자집합과 HTTP
코딩된 문자집합
언어 태그
하이픈으로 서브태그 (sgn-US-MA) 국제화된 URIURI는 국제화를 거의 지원 X -> US-ASCII의 부분집합으로 구성 이스케이핑URI에 스페이스를 삽입하고 싶다면 아스키 코드 '%20'를 삽입해야한다 스프링 URI 아스키 변환URI uri = new URI(originalUrl);
String encodedUrl = uri.toASCIIString(); |
No description provided.
The text was updated successfully, but these errors were encountered: