UA를 정의 수준으로만 아는지, 아니면 왜 UA 분기가 위험한지와 그럼에도 UA가 필요한 좁은 자리를 같이 짚는지를 가르는 질문이다. 호환성 대응을 평소 어떻게 풀어왔는지가 답에서 자연스럽게 드러나야 한다.
User-Agent는 요청을 보낸 클라이언트의 브라우저·엔진·OS 정보를 담아 보내는 HTTP 헤더다. 서버는 요청 헤더에서, 클라이언트는 navigator.userAgent로 읽는다. 문제는 UA 문자열이 역사적으로 호환성을 위해 거짓 정보까지 섞여 있는 포맷이라 정밀 분기의 근거로는 약하다는 점이다. 그래서 실무 원칙은 단순하다. 가능한 한 기능 감지로 풀고, UA는 다른 방법이 없을 때만 좁은 범위로 쓴다.
특정 브라우저 버그를 UA 분기로 막아본 경험이 있다면 그 분기를 언제 걷어냈는지까지 같이 말할 수 있다
기능 감지로 바꾸면서 분기 코드가 줄어든 사례가 있다면 유지보수 비용 관점으로 연결할 수 있다
로그 분석에서 UA를 봇 식별 용도로 써본 적이 있다면 "UA를 분기가 아니라 관찰용으로 쓴 케이스"로 풀 수 있다
Client Hints 도입을 검토하거나 적용해 본 경험이 있다면 표준 방향에 대한 감각을 자연스럽게 보여줄 수 있다
아직 공개된 답변이 없어요. 첫 공개 답변을 남겨보세요.