"장고 쿠키 & 세션"의 두 판 사이의 차이

Pywiki
둘러보기로 가기 검색하러 가기
 
(같은 사용자의 중간 판 하나는 보이지 않습니다)
9번째 줄: 9번째 줄:
  
 
엑셀 계산이나 딥러닝 등의 연산은 세션에 적당히 저장해 두었다가 지우는 방식을 주로 사용하는 듯하다.(유지시간도 설정할 수 있으니)
 
엑셀 계산이나 딥러닝 등의 연산은 세션에 적당히 저장해 두었다가 지우는 방식을 주로 사용하는 듯하다.(유지시간도 설정할 수 있으니)
 +
 +
유효시간 설정은 어떻게 할까..?
  
 
= 쿠키 =
 
= 쿠키 =
42번째 줄: 44번째 줄:
 
response.delete_cookie('이름')
 
response.delete_cookie('이름')
  
=== 유의점 ===
+
= 유의점 =
 
함수의 끝인 return에서 redirect 주소(response)를 반환해주어야 쿠키에 데이터가 반영이 된다. 주소만 제대로 되어 있다면 request.META.get('HTTP_REFERER', '/') 형태로 입력해도 쿠키는 무사히 반영된다.
 
함수의 끝인 return에서 redirect 주소(response)를 반환해주어야 쿠키에 데이터가 반영이 된다. 주소만 제대로 되어 있다면 request.META.get('HTTP_REFERER', '/') 형태로 입력해도 쿠키는 무사히 반영된다.
 
[[분류:8. 장고 이외지식]]
 
[[분류:8. 장고 이외지식]]

2022년 9월 6일 (화) 10:24 기준 최신판

1 개요[편집 | 원본 편집]

로그인 따위는 세션, 쿠기에서 관리한다. 이에 대한 지식.

2 세션[편집 | 원본 편집]

2.1 보안. 세션유효기간.[편집 | 원본 편집]

request.session['이름'] = 값

del request.session['이름']

엑셀 계산이나 딥러닝 등의 연산은 세션에 적당히 저장해 두었다가 지우는 방식을 주로 사용하는 듯하다.(유지시간도 설정할 수 있으니)

유효시간 설정은 어떻게 할까..?

3 쿠키[편집 | 원본 편집]

장고에선 기본적으로 가벼운 정보를 쿠키에 저장한다. 그리고 유효기간을 설정해 관리한다.

3.1 쿠키 만들기[편집 | 원본 편집]

과정 코드 비고
다음페이지 지정 response = redirect('membership:confirm_sending') # 다음에 보낼 페이지를 지정해 응답을 받아야 한다.(그래야 저장됨)
쿠키 저장 response.set_cookie('verification_code', verification_code, max_age=300) # 사용자의 쿠키에 검증코드 저장 인자는

'이름', 값, max_age=유효기간(초)

형태로 집어넣는다.

디폴트 유효기간 설정은 settings.py의 SESSION_COOKIE_AGE에 초단위의 기간을 설정하면 된다.

3.2 쿠키 다루기[편집 | 원본 편집]

request.COOKIES.get('이름')

response = redirect('url')  # 이동할 곳

response.set_cookie('이름', 값)  # 이런 방식으로 쿠키를 만들거나 지워야 한다.

response.delete_cookie('이름')

4 유의점[편집 | 원본 편집]

함수의 끝인 return에서 redirect 주소(response)를 반환해주어야 쿠키에 데이터가 반영이 된다. 주소만 제대로 되어 있다면 request.META.get('HTTP_REFERER', '/') 형태로 입력해도 쿠키는 무사히 반영된다.