Django가 Cookie를 이용하여 반파충류를 실현하는 예

우리는 Diango가 수신한 HTTP 요청 정보에 쿠키 정보가 들어 있다는 것을 알고 있다.쿠키의 역할은 현재 사용자의 신분을 식별하기 위해 다음과 같은 예를 통해 쿠키의 역할을 설명한다.예:
브라우저가 서버(Diango)에 요청을 보내면 서버가 응답한 후에 양자는 연결을 끊는다(세션이 끝난다). 다음에 사용자가 다시 서버를 요청하면 서버는 이 사용자가 누군지 식별할 수 없다. 예를 들어 사용자 로그인 기능, 쿠키 메커니즘이 지원되지 않으면 데이터베이스 조회를 통해 실현할 수 있고 페이지를 새로 고칠 때마다 사용자 로그인을 다시 조작해야 사용자를 식별할 수 있다.이것은 개발자에게 대량의 불필요한 작업을 가져다 주고 간단한 사용자 로그인 기능은 서버에 커다란 부하 압력을 가져다 줄 것이다.
쿠키는 브라우저에서 서버에 데이터를 전달하여 서버가 현재 사용자를 식별할 수 있도록 하고 서버가 쿠키에 대한 다른 메커니즘은 Session을 통해 이루어진다. Session은 현재 사용자의 기본 정보, 예를 들어 이름, 나이와 성별 등을 저장한다. 쿠키는 브라우저에 저장되고 쿠키의 데이터는 서버에서 제공되기 때문에 서버가 사용자 정보를 브라우저에 직접 저장하면사용자 정보가 쉽게 유출되고 쿠키 크기가 4KB를 초과할 수 없고 중국어를 지원할 수 없기 때문에 서버의 특정한 영역에 사용자 데이터를 저장하는 메커니즘이 필요합니다. 이 영역이 바로 Session입니다.
한마디로 쿠키와 세션은 HTTP 프로토콜의 무상태적인 폐단을 해결하고 브라우저와 서버가 오랫동안 연결될 수 있도록 하기 위한 세션이다.
쿠키는 HTTP 프로토콜의 무상태적 폐단을 해결하는 것 외에 쿠키를 이용하여 반파충류 메커니즘을 실현할 수 있다.빅데이터와 인공지능이 발전함에 따라 파충류 기술이 날로 보완되고 사이트는 자신의 데이터의 안전성과 부하 능력을 보호하기 위해 사이트에 파충류 메커니즘을 설치한다.
쿠키는 HTTP 프로토콜을 통해 브라우저에서 서버로 전달되기 때문에 보기 함수의 요청 대상인 request에서 쿠키 대상을 얻을 수 있으며, Diango는 다음과 같은 방법으로 쿠키 대상을 조작할 수 있습니다.

#   Cookie   Python  
request。COOKIES['uuid']
request。COOKIES。get('uuid')

#   Cookie,   Cookie  
return HttpResponse('Hello world')
response。set_cookie('key', 'value')
return response

#  Cookie
return HttpResponse('Hello world')
response。delete_cookie('key')
return response
쿠키 대상을 조작하는 것은 쿠키를 가져오고 추가하고 삭제하는 것이다.쿠키 정보 추가는 set_쿠키 방법으로 이루어졌습니다. 이 방법은 응답 클래스 HttpResponseBase에서 정의한 것입니다
  • 키: ECookie를 설정한 키, 사전과 유사한 키..
  • value: 쿠키의 value를 설정합니다. 사전의 value와 유사합니다..
  • maxage: 쿠키의 유효 시간을 초 단위로 설정합니다
  • expires: 쿠키의 유효 시간을 날짜 형식으로 설정합니다
  • path: 쿠키의 유효 경로를 설정하고 기본값은 루트 디렉터리 (사이트 첫 페이지) 입니다
  • domain: 쿠키가 적용되는 도메인 이름 설정..
  • secure: 전송 방식을 설정합니다. False인 경우 HTTP를 사용하고, 그렇지 않으면 HTTPS를 사용합니다..
  • httponly: HTTP 프로토콜만 사용할 수 있는지 설정..
  • samesite: 강제 모드를 설정하고 선택 가능한 값은 lax 또는strict이며 주로 CSRF 공격을 방지합니다..
  • 흔히 볼 수 있는 파충류는 주로 매개 변수를 설정하는 max_age,expires,path.매개변수 max_age 또는 expires는 쿠키의 유효성을 설정하여 클라이언트가 사이트 데이터를 장시간 찾을 수 없도록 합니다.매개 변수 path는 쿠키의 생성 과정을 숨기는 데 사용되며 파충류 개발자가 쉽게 찾아내고 풀 수 없습니다.
    쿠키의 반파충류 실현에 대해 독자 여러분의 인식이 있기를 바랍니다.
    이쯤에서 Django가 쿠키를 이용하여 반파충을 실현하는 것에 관한 글을 소개합니다. 더 많은 Django 반파충에 관한 내용은 저희 이전의 글을 검색하거나 아래의 관련 글을 계속 훑어보시기 바랍니다. 앞으로 많은 응원 부탁드립니다!

    좋은 웹페이지 즐겨찾기