인프런 커뮤니티 질문&답변

가후님의 프로필 이미지
가후

작성한 질문수

남박사의 파이썬으로 실전 웹사이트 만들기

댓글 기능을 Ajax로 수정하기

csrf 질문드려요

작성

·

189

1

여기까지 공부 하고 

기존에 작성 했던 코드들을 훌터 보고있습니다.

 

__init__.py 파일을 보니

 

csrf = CSRFProtect(app) 이라는 코드가 작성되어있는데

 

csrf 라는 변수에 넣어두는 이유가있을까요?

그냥 

CSRFProtect(app) 이라고 써도 될거 같은 느낌이에요

 

__init__.py 파일을 살펴봐도

csrf 변수를 사용하지 않는데, 변수에 넣어두는 이유를 모르겠습니다.

 

이유가 있다면 알려주시면 감사하겠습니다!!!

답변 1

1

남박사님의 프로필 이미지
남박사
지식공유자

네 말씀하신데로 사실 csrf 변수는 사용되지 않습니다.

csrf = CSRFProtect()

app = Flask(__name__)
csrf.init_app(app)

 

보통 이런식으로 사용되는데 app 먼저 CSRFProtect() 객체를 생성했을때는 init_app() 을 해줘야 해서 변수를 사용하나 말씀하신데로 CSRFProtect(app) 을 하는 경우 이미 적용이 되기 때문에 csrf 변수는 사용할 필요가 없어 보입니다. ^^;;

가후님의 프로필 이미지
가후
질문자

강의 영상에서는 

csrf.init_app(app)

위코드를 작성하지 않는데,  코드 작성 해줘야 하는건가요?

헥갈리네요 ㅠㅠ

남박사님의 프로필 이미지
남박사
지식공유자

아니요 그렇게도 선언할 수 있다는 말씀을 드린것입니다. ^^;;

가후님의 프로필 이미지
가후

작성한 질문수

질문하기