BackgroundTask 인자값 전달
안녕하세요 강사님 강의 재밌게 잘보고 있습니다
BackGround task 강의에서 궁금한게 생겨서 질문 남깁니다.
아래는 verify_otp_handler 의 선언부인데
def verify_otp_handler(
request : VerifyOTPRequest,
background_tasks : BackGroundTasks
... )
backgound_tasks 라는 객체는 DI로 받지도 않고 있는데 어떻게 함수 내부에서 사용될 수 있는지가 궁금합니다.
request 라는 객체는 request 헤더부에서 넘어온 값이 프레임워크에 의해서 VerifyOTPRequest로 전처리되거라 어디서부터 왔는지 그 출처를 알겠지만,
backgound_tasks는 DI도 되지 않았고 헤더부에서 넘어온 것도 아닌데 어떻게 생성된건지 궁금합니다.
답변 1
1
안녕하세요. FastAPI는 서버가 동작할 때 router에 연결된 함수의 signautre를 분석하는 과정을 거치는데요. 이 때 parameter에 적힌 type hint에 따라 해당 parameter에 어떤 값을 전달할지 결정됩니다. 따라서 BackGroundTasks라고 type hints를 적어주게 되면, FastAPI에 의해서 background_tasks 객체가 주입됩니다. (FastAPI 코드 보기)
FasAPI Swagger UI에서 단일조회 todo_id 를 사용했는데, 입력값에 1을 넣으니 오류가 뜹니다 ㅠ
0
87
2
DB 질문
0
81
2
Post API 강의 질문
0
55
2
post 작성 오류
0
107
3
uvicorn 종료 문제
0
436
2
왜 return타입이 ToDo라는 스트링인가요?
0
130
2
ORM 연관관계
0
109
2
Oracle DB 연결과 관련해 질문이 있습니다..
0
153
2
섹션 2, 3의 PATCH API의 차이점
0
132
1
ORM 테이블 생성
0
119
1
테스트 코드 오류
0
177
1
orm relationship 정의 중 해당 에러 발생 시 어떻게 고쳐야 하는걸까요
0
214
3
FastAPI 폴더 구조에 대해 질문이 있습니다.
0
412
2
질문 있습니다.
0
161
2
ORM 개념
0
133
1
mysql root 비밀번호 변경관련
0
296
2
[질문] patch API
0
151
3
디자인 패턴
0
128
1
main.py 리로드문제
0
235
2
인터프리터 오류
0
286
4
로그 저장에 대한 질문입니다.
0
100
1
Internal Server Error
0
240
2
PATCH API - 수정
0
199
2
파이참 임포트 문제
0
263
1





