본문 바로가기

Language/Java / JSP

[JSP] 사용자 header 정보 가져오기

반응형

웹 서비스를 개발하다보면 서비스 사용자의 정보가 필요할때가 가끔 있다.
예를들어 접속자의 브라우저 종류에 따른 분기처리를 해야 한다던지 또는 이전 페이지의 접속 URL을 확인하여 특정 로직을 타게 만든다던지 할때가 있다.


이때에는 response 객체의 header 정보를 활용하면 쉽게 처리가 가능하다.

또 반대로 header(헤더) 값에 임의의 정보를 설정할 수도 있는데 이를 통해 상호 규칙을 만들어 클라이언트와 서버간에 내용을 주고 받을 수도 있다.


헤더 설정 및 정보 가져오기

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.Enumeration" %>
<%



	// 헤더 추가하기
	response.addHeader("apiKey", "a2dkrk") ;

	// 헤더값 변경하기
	response.setHeader("apiKey", "112233") ;
	
	// 헤더값을 정수값으로 변경하기
	response.setIntHeader("apiKey", 25) ;





	// 헤더 전체정보 보기
	Enumeration<String> em = request.getHeaderNames();

	while(em.hasMoreElements()){
		String name = em.nextElement() ;
		String val = request.getHeader(name) ;
		
		out.println(name + " : " + val) ;
	}

	
	
	// 이전 접속 페이지 가져오기
	String h_referer = request.getHeader("referer") ;
	
	// 사용자의 브라우저 확인
	String h_agent = request.getHeader("User-Agent") ;
	

%>