웹이서 클라이언트가 사용하는 브라우저의 정보는 html의 header에 저장됩니다.


클라이언트의 브라우저 정보를 확인 하는 방법은 크게 3가지가 있습니다.


1. JavaScript를 이용한 정보 호출


1
2
3
4
5
6
<head>
<script>
    var userAgentInfo = window.navigator.userAgent;
    document.write(userAgentInfo);
</script>
</head>
cs



2. JSP(java code)를 이용한 정보 호출


1
2
3
4
5
6
<body>
    <%
        String userAgentInfo = request.getHeader("User-Agent");
        out.print(userAgentInfo);
    %>
</body>
cs



3. JSTL을 이용한 정보 호출


1
2
3
4
5
6
7
8
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html>
<html>
<body>
    <c:set var="userAgentInfo" value="${header['User-Agent']}" />
    <c:out value="${userAgentInfo}" />
</body>
</html>
cs

 



[ 호출 결과 ]



Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36



저는 크롬으로 페이지(리소스)를 실행하여 위와 같은 결과를 얻었습니다. (브라우저별 호출 결과는 아래 링크한 모질라 홈페이지에서 확인 할 수 있습니다)


아래에 호출 결과를 분석하는 내용 추가했습니다.


내용과 저의 호출 결과를 보면 저의 브라우저는 모질라 기반으로 시스템은 원도우 NT 10.0 64비트 버전을 사용하고 있고  Gecko기반과 유사한 애플웹킷, 크롬, 사파리 중 하나의 브라우저를 사용한다는 의미입니다. 세 브라우저는 모우 호환가능 한것으로 판단됩니다.








  • Mozilla/5.0 는 일반적으로 사용 브라우저가 모질라와 호환가능 함을 의미하며, 현재 대부분의 브라우저에 해당합니다.
  • platform 은 브라우저가 실행중인 기본 플랫폼과 휴대전화(윈도우, 맥 리눅스, 안드로이드 등) 인지 여부를 나타냅니다. 파이어 폭스 OS폰은 단순히 Mobile이라고 표시됩니다. 플랫폼은 여러 개의 세미콜론으로 설명됩니다.
  • rv:geckoversion은 Gecko의 출시 버전을 나타냅니다(예:"17.0"). 최근 브라우저에서 geckoversion은 파이어폭스 버전과 동일합니다.
  • Gecko/geckotrail 은 브라우저가 Gecko을 기반으로한다는 것을 나타냅니다.
  • 데스크톱에서 geckotrail 은 고정 문자열 "20100101"입니다.
  • Firefox/firefoxversion은 브라우저가 Firefox입을 나타내며 "17.0"은 버전을 의미합니다.



검색중에 User-Agent와 관련해서 자세히 블로깅해 둔 페이지가 있어서 링크합니다. http://ohgyun.com/292




출처 : 모질라 (https://developer.mozilla.org/ko/docs/Web/HTTP/Headers/User-Agent)


블로그 이미지

잉비니

,