본문 바로가기
카테고리 없음

JSP(16) - Cookie

by SeleniumBindingProtein 2022. 1. 29.
728x90
반응형

1. 쿠키란 
    1) 클라이언트 상태 정보를 유지하기 위한 기술임.
    2) 상태 정보를 클라이언트(주로 웹 브라우저)에 키(key)와 값(value) 형태로 저장했다가
       다음 요청시 저장된 쿠키를 함께 전송함.
    3) 웹 서버는 브라우저가 전송한 쿠키로부터 필요한 데이터를 읽어올 수 있음.
    4) 3000개까지 만들수 있음.
       쿠키 하나의 최대 크기는 4096바이트임.
       하나의 호스트나 도메인에서 최대 50개까지 생성가능.   

2. 쿠키 동작 메커니즘
    1) 클라이언트가 서버에 요청을 보냄
    2) 서버가 쿠키를 생성하여 HTTP 응답 헤더에 실어 클라이언트에 전송함
    3) 클라이언트는 쿠키를 받아 저장함 (서버는 아직 쿠키를 사용 불가함)
    4) 클라이언트는 다음번 요청 시 저장해둔 쿠키를 HTTP 요청 헤더에 실어 보냄
    5) 서버는 쿠키 정보를 읽어 필요한 작업 수행함.

3. 레이어 팝업창에 쿠키 적용하기
    1) 팝업창    
        - 웹 애플리케이션을 개발시 팝업창을 많이 사용하게 됨.
            - 회원가입 시 아이디 중복체크
            - 공지사항 띄워주는 용도
        - 과거엔 별도의 URL 가지는 팝업창 주로 사용됨 => 불법 광고 홍보 수단 악용    
    2) "하루동안 열지 않음" 문구가 씌어진 팝업창    
        - ajax()
            - 비동기 HTTP 요청을 보내는 JQuery 함수임.
            - 인수로 HTTP 요청을 구성하는 설정값 정의
                - url : 요청을 보낼 페이지의 url임. 기본값 현재 페이지임.
                - type : 'get', 'post' 등 HTTP 메서드를 지정함.
                - data : 서버로 보낼 데이터임.
                - dataType : 서버로부터 받을 '응답' 데이터의 타입임.
                - success : 요청 성공 시 실행할 콜백 함수임.

4. 로그인 아이디 저장에 쿠키 적용하기
    1) 로그인 성공한 경우에만 쿠키 생성 및 삭제함.
    2) 쿠키에 저장된 아이디가 있다면 로그인 페이지에서는 아이디가 자동 입력됨.
    3) [아이디 저장하기] 체크박스를 해제하고 로그인 성공하면 쿠키 삭제됨.

5. 요약
    1) 쿠키는 생성자를 통해서만 생성가능.
        - 생성 후 쿠키값은 변경할수 있으나 쿠키명은 변경 불가함.
    2) setPath() 메서드로 적용할 경로 설정함.
    3) setMaxAge() 메서드로 쿠키 유지 기간 설정함.
    4) response 내장객체의 addCookie() 메서드로 클라이언트에 쿠키 저장함.
    5) 쿠키는 생성 직후 바로 사용불가. 클라이언트가 재요청을 했을 때부터 사용가능해짐.       



728x90
반응형

댓글