아이티고

강좌검색

  • 강좌검색
  • 질문검색
    최근 검색어 자동저장 전체삭제

    알림

    여기를 클릭하면, 샘플강의가 재생됩니다.
    tag
    강좌코드 : la_P100108
    열공이

    FastAPI로 시작하는 백엔드 개발 - 기초부터 실무까지 Part.6-1 httpx.AsyncClie
    담당강사 : 김종영

    강의구성 총 4강좌 (강의시간 : 총 ) 수강기간 30일
    강의형식 동영상 수강료 16,000원 이 강좌의 80% 이상 수강 시
    출력이 가능합니다.
    강의수준 중급 강의에서 사용하는
    프로그램 & 버전
    VS Code (무료)
    담당강사
    강사사진
    김종영 강사
    • - 한양대학교 대학원 컴퓨터공학과
    • - 주식회사 누리비젼(이미지프로세싱)
    • - 포스인주식회사(모델링)
    • - (재)부산정보산업진흥원
    • - 신안산대학 특임강사
    • - 아이티고 이러닝 강사
    참고도서
    강의구성 총 4강좌 (강의시간 : 총 )
    수강기간 30일
    강의형식 동영상
    수강료 16,000원 이 강좌의 80% 이상 수강 시
    출력이 가능합니다.
    강의수준 중급
    강의에서 사용하는
    프로그램 & 버전
    VS Code (무료)
    담당강사
    김종영 강사
    • - 한양대학교 대학원 컴퓨터공학과
    • - 주식회사 누리비젼(이미지프로세싱)
    • - 포스인주식회사(모델링)
    • - (재)부산정보산업진흥원
    • - 신안산대학 특임강사
    • - 아이티고 이러닝 강사
    수강신청
    • 현재 강좌만 수강 신청하기
    • 수강료 16,000원
    • 수강기간 : 30일 수강신청
    • 자유이용권으로 수강하기
    • 총 4,194강좌 / 54,382개 영상
      3개월 62,700원, 6개월 118,800원, 12개월 224,400원의 가격으로 무제한 수강해 보세요.
    • 자유이용권 구매 >
    과정소개
    본 과정은 백엔드 개발의 핵심 프레임워크인 FastAPI를 경로 파라미터, 쿼리 파라미터, 요청 본문(Body) 처리부터 실무 수준의 API 설계까지 체계적으로 학습합니다. HTTP 요청과 응답의 기본 구조, ASGI 애플리케이션의 동작 원리를 이해하고, Pydantic을 활용한 데이터 검증과 직렬화가 FastAPI 내부에서 어떻게 이루어지는지 그 원리를 탄탄히 익힙니다. 경로 파라미터와 쿼리 파라미터의 차이, BaseModel을 활용한 요청/응답 스키마 설계, response_model을 통한 응답 검증, HTTPException을 이용한 상태 코드 관리 등 API 설계의 기본기를 다진 뒤, Dependency Injection을 통한 코드 재사용과 인증/인가(JWT, OAuth2) 처리, 데이터베이스 연동, 비동기(async) 처리와 백그라운드 작업(Background Tasks), 미들웨어와 CORS 설정, 예외 처리 커스터마이징, APIRouter를 활용한 라우팅 구조화까지 실무 API 개발에 필요한 폭넓은 주제를 다룹니다. 개발 환경 구성(venv, conda)부터 VS Code를 활용한 실습 환경 설정, uvicorn 서버 실행과 Swagger UI를 통한 API 테스트, 그리고 최종적으로는 Docker를 활용한 배포까지 직접 손으로 다뤄보며, To-do 리스트 API를 예제로 CRUD 기능부터 인증이 포함된 실전 백엔드 서비스로 확장해봅니다. 이 과정을 통해 백엔드 개발을 처음 접하는 분도 FastAPI 기반 API의 동작 원리를 이해하고, 원하는 서비스에 맞는 REST API를 설계하고 배포까지 수행할 수 있는 실무 역량을 갖추게 됩니다.
    학습목표
    ● async def 요청 함수 내부에서 동기 블로킹 코드를 호출했을 때 이벤트 루프가 블로킹되는 문제를 이해하고, httpx.AsyncClient로 이를 해결할 수 있다.
    ● httpx.AsyncClient의 get()/post()/put()/delete() 메서드를 사용해 비동기 HTTP 요청을 전송하고 응답을 처리할 수 있다.
    ● raise_for_status()를 활용해 HTTP 응답 상태 코드에 따른 예외 처리를 구현할 수 있다.
    ● FastAPI의 lifespan과 app.state를 활용해 앱 전역에서 공유하는 httpx.AsyncClient 자원을 관리할 수 있다.
    ● 용도(인증, timeout 등)에 따라 여러 개의 httpx.AsyncClient를 분리해서 구성하고 Depends를 통해 활용할 수 있다.
    교육대상
    FastAPI를 활용한 백엔드 API 개발의 원리를 이해하고, 실무 수준의 REST API 설계 및 구현 역량을 갖추고자 하는 개발자 및 백엔드 입문자
    선수 과정
    파이썬 프로그래밍 언어
    차시별 학습목표
    01. async def 요청 함수 내부에서 동기 블로킹 코드(requests.get() 등)를 호출했을 때 이벤트 루프 전체가 블로킹되는 문제를 이해할 수 있다. httpx.AsyncClient를 사용해 이 문제를 해결하는 방법을 구현할 수 있다.
    02. httpx.AsyncClient를 사용해 GET/POST/PUT/DELETE 요청을 비동기로 전송하고 응답을 처리하는 방법을 구현할 수 있다. raise_for_status()를 사용해 응답 상태 코드에 따른 예외 처리를 구현할 수 있다.
    03. FastAPI 앱의 lifespan을 통해 app.state에 공유 자원(httpx.AsyncClient 등)을 저장하고 활용하는 방법을 구현할 수 있다. Request 객체의 주요 속성(app, method, url, base_url, headers, client, state)의 의미를 이해할 수 있다.
    04. 용도(인증, timeout 등)에 따라 여러 개의 httpx.AsyncClient()를 lifespan에서 생성하고 Depends를 통해 구분해서 사용하는 방법을 구현할 수 있다.
    참고사항
    - 수강 기간 중 언제든지 반복 수강이 가능합니다.
    - 수강 여부 : 해당 차시의 80%를 수강하면 (회색) 배경으로 표시됩니다.
    - 수강 신청 완료 후 수강할 수 있습니다.
    - 즐겨찾기 한 강좌는 MY Class에서 확인할 수 있습니다.

    시리즈강좌

    수강평

    • 0.0
    • 0.0
    • (0개의 수강평)
    버튼
    • 최신순
    • 높은 평점순
    • 낮은 평점순
    ※ 리뷰는 본 강의를 1차시 이상 수강하셔야 작성하실 수 있습니다.
    이전 1/297 다음
    수강생 리뷰 작성

    평점

    버튼
    • 5점
    • 4점
    • 3점
    • 2점
    • 1점

    수강평

    ※ 수강평은 최대 200자까지 가능합니다.
    ※ 리뷰 작성 안내
    본 리뷰는 AItgo 사이트에 작성자 ID와 함께 게시됩니다.
    타인에게 불쾌감을 줄 수 있는 부적절한 표현(욕설, 비방, 비속어 등등)이 들어 있는 게시물의 경우 고지 없이 삭제 될 수 있습니다.
    작성하신 리뷰는 "My Class > 나의 수강 리뷰" 페이지에서 삭제 하실 수 있습니다.
    강좌 리스트
    01. 요청 함수를 코루틴(async def)과 일반 함수(def)로 구현할 때, 이벤트 루프가 블로킹되는 패턴 [28:14]
    02. httpx.AsyncClient()의 get()/post()/put()/delete() 사용법, raise_for_status() 사용법 [42:48]
    03. FastAPI(lifespan=lifespan)의 state 속성, Request의 app, method, url, base_url, headers, client, state 속성, @asynccontextmanager 데코레이터 [34:46]
    04. @asynccontextmanager의 FastAPI 생명 주기에서 용도별로 httpx.AsyncClient() 객체를 따로 생성해서 사용하기 [17:10]
    지금 자유이용권 구매하고, 모든 강의를 자유롭게 수강하세요!