💻본 포스팅은 '모든 개발자를 위한 HTTP 웹 기본 지식 - 김영한'님의 강의를 듣고 작성되었습니다.
https://inf.run/kXeZ
[협상]
- 클라이언트가 선호하는 표현 요청
- Accept: 클라이언트가 선호하는 미디어 타입 전달
- Accept - Charset: 클라이언트가 선호하는 문자 인코딩
- Accept - Encoding: 클라이언트가 선호하는 압축 인코딩
- Accept - Language: 클라이언트가 선호하는 자연 언어
- 협상 헤더는 요청시에만 사용한다.
[Accept - Language 적용 전후 살펴보기]
- Accept - Language를 설정하지 않고 보내면 다중 언어 지원 서버의 경우 우선순위에 있는 언어로 브라우저에게 다시 응답할 것이다.
- 이를 피하기 위해서 우리는 Accept - Language:ko 라는 정보를 서버에게 전달해 한국어를 우선으로 지원 받아야 한다.
- 그렇다면 한국어 지원이 아예 없는 서버라면?
- 우선 순위를 보내 원하는 언어로 받을 수 있게 해주어야 한다.
[협상과 우선순위]
- Quality Values(q) 값 사용
- 0~1, 클수록 높은 우선순위
- 생략하면 1
- Accept-Language: ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7
- ko-KR;q=1 (q생략)
- ko;q=0.9
- en-US;q=0.8
- en:q=0.7
- 구체적인 것이 우선한다.
- Accept: text/*, text/plain, text/plain;format=flowed, */*
- text/plain;format=flowed
- text/plain
- text/*
- */*
- 구체적인 것을 기준으로 미디어 타입을 맞춘다.
- Accept: text/*;q=0.3, text/html;q=0.7, text/html;level=1, text/html;level=2;q=0.4, */*;q=0.5
'Back-End > HTTP' 카테고리의 다른 글
[HTTP][일반 헤더] - 일반 정보와 특별한 정보 (0) | 2022.02.25 |
---|---|
[HTTP][일반 헤더] - 전송 방식 (0) | 2022.02.25 |
[HTTP][일반 헤더] - 표현 (0) | 2022.02.25 |
[HTTP][일반 헤더] - HTTP 헤더 개요 (0) | 2022.02.25 |
[HTTP][모든 개발자를 위한 HTTP 웹 기본 지식] - HTTP 상태코드 (0) | 2022.02.22 |