첫 장>클라이언트 힌트
클라이언트 힌트는 웹 브라우저가 클라이언트 장치와 브라우저에 대한 자세한 정보를 웹 서버로 전송할 수 있도록 하는 HTTP 헤더와 JavaScript API 세트입니다. 클라이언트 힌트는 User-Agent의 후속 기능으로 설계되었으며, 웹 서버가 신뢰할 수 없는 User-Agent 문자열 기반 감지나 브라우저 지문 기술에 의존하지 않고 클라이언트의 콘텐츠를 최적화할 수 있는 표준화된 방법을 제공합니다.
HTTP User-Agent
""
Client Hints JavaScript API
API Support
False
Client Hints HTTP Headers
클라이언트 힌트는 아직 완전히 표준화되지 않았으며 일부 브라우저에서는 지원되지 않습니다. 클라이언트에서 전송하며, 캐싱 또는 클라이언트에서 전송되지 않아 값을 수신하지 못할 수 있습니다.
sec-ch-ua
받지 못함
sec-ch-ua-platform
받지 못함
sec-ch-ua-mobile
받지 못함
sec-ch-ua-full-version
받지 못함
sec-ch-ua-full-version-list
받지 못함
sec-ch-ua-platform-version
받지 못함
sec-ch-ua-arch
받지 못함
sec-ch-ua-bitness
받지 못함
sec-ch-ua-wow64
받지 못함
sec-ch-ua-model
받지 못함
sec-ch-lang
받지 못함
sec-ch-save-data
받지 못함
sec-ch-width
받지 못함
sec-ch-viewport-width
받지 못함
sec-ch-viewport-height
받지 못함
sec-ch-dpr
받지 못함
sec-ch-device-memory
받지 못함
sec-ch-rtt
받지 못함
sec-ch-downlink
받지 못함
sec-ch-ect
받지 못함
sec-ch-prefers-color-scheme
받지 못함
sec-ch-prefers-reduced-motion
받지 못함
sec-ch-prefers-reduced-transparency
받지 못함
sec-ch-prefers-contrast
받지 못함
sec-ch-forced-colors
받지 못함
sec-ch-ua-form-factors
받지 못함
알려진 클라이언트 힌트 목록
Sec-CH-UA
사용자 에이전트의 브랜드와 버전을 나타냅니다.Sec-CH-UA-Full-Version
사용자 에이전트의 전체 버전을 나타냅니다(더 이상 사용되지 않으며 Sec-CH-UA-Full-Version-List로 대체됨).Sec-CH-UA-Full-Version-List
브랜드 목록에 있는 각 브랜드의 전체 버전을 나타냅니다.Sec-CH-UA-Platform
지정된 사용자 에이전트가 실행 중인 플랫폼을 나타냅니다.Sec-CH-UA-Platform-Version
지정된 사용자 에이전트가 실행 중인 플랫폼 버전을 나타냅니다.Sec-CH-UA-Arch
특정 사용자 에이전트가 실행되는 플랫폼의 아키텍처를 나타냅니다.Sec-CH-UA-Bitness
특정 사용자 에이전트가 실행되는 플랫폼 아키텍처를 나타내는 비트 수입니다.Sec-CH-UA-WoW64
사용자 에이전트 바이너리가 64비트 Windows에서 32비트 모드로 실행되고 있는지 감지하는 데 사용됩니다.Sec-CH-UA-Model
지정된 사용자 에이전트가 실행 중인 장치를 나타냅니다.Sec-CH-UA-Mobile
사용자 에이전트가 "모바일" 사용자 경험에 편향되어 있는지 여부를 감지하는 데 사용됩니다.Sec-CH-UA-Form-Factors
역사적으로 User-Agent 문자열에서 <deviceCompat> 토큰으로 표현된 장치의 폼 팩터를 나타냅니다.Sec-CH-Lang
(또는 Lang)은 사용자의 언어 기본 설정을 나타냅니다.Sec-CH-Save-Data
(또는 Save-Data)는 데이터 사용량을 줄이기 위한 사용자 에이전트의 기본 설정을 나타냅니다.Sec-CH-Width
서버에 이미지의 레이아웃 너비를 제공합니다.Sec-CH-Viewport-Width
(또는 Viewport-Width)는 CSS 픽셀 단위의 사용자 뷰포트 너비입니다.Sec-CH-Viewport-Height
사용자 에이전트의 현재 뷰포트 높이를 나타냅니다.Sec-CH-DPR
(또는 DPR)은 사용자 화면의 실제 픽셀과 CSS 픽셀의 비율을 보고합니다.Sec-CH-Device-Memory
(또는 장치-메모리) 현재 장치에 있는 대략적인 메모리 양(GiB 단위)을 표시합니다. 이 정보는 사용자를 식별하는 데 사용될 수 있으므로 Device-Memory의 가치는 의도적으로 매우 대략적으로 만들어집니다. 유효한 값은 0.25, 0.5, 1, 2, 4, 8입니다.Sec-CH-RTT
(또는 RTT)는 애플리케이션 계층의 대략적인 왕복 시간(밀리초 단위)을 제공합니다. RTT는 힌트에 서버 처리 시간이 포함된다는 점에서 전송 계층 RTT와 다릅니다. 지문 채취를 방지하기 위해 RTT 값은 가장 가까운 25밀리초로 반올림됩니다.Sec-CH-Downlink
(또는 다운링크)는 초당 메가비트(Mbps)로 표시되며 사용자 연결의 대략적인 다운스트림 속도를 보여줍니다. 값은 초당 25킬로비트의 가장 가까운 배수로 반올림됩니다. 지문인식이 또 되니까.Sec-CH-ECT
(또는 ECT)는 효과적인 연결 유형을 나타냅니다. 해당 값은 열거된 연결 유형 목록 중 하나이며, 각각은 지정된 범위 내의 RTT 및 다운링크 값과의 연결을 설명합니다. 유효한 ECT 값은 4g, 3g, 2g 및 Slow-2g입니다.Sec-CH-Prefers-Color-Scheme
사용자가 선호하는 색 구성표를 나타냅니다.Sec-CH-Prefers-Reduced-Motion
사용자가 사용하는 애니메이션이나 모션의 양을 최소화하도록 시스템에 요청했는지 감지하는 데 사용됩니다.Sec-CH-Prefers-Reduced-Transparency
사용자가 사용하는 투명 또는 반투명 레이어 효과의 수를 최소화하도록 시스템에 요청했는지 여부를 감지하는 데 사용됩니다.Sec-CH-Prefers-Contrast
사용자가 웹 콘텐츠를 더 높은(또는 더 낮은) 명암비로 렌더링하도록 요청했는지 여부를 감지하는 데 사용됩니다.Sec-CH-Forced-Colors
사용자 에이전트가 페이지에서 사용자가 선택한 제한된 색상 팔레트를 강제하는 강제 색상 모드를 활성화했는지 여부를 감지하는 데 사용됩니다.