본문 바로가기
공부/Python(FastAPI)

FastAPI 기초 익히기

by 줘요 2023. 9. 12.

파이썬 문제풀이 (4문제) : input과 함수(사용자정의)를 활용하여 사칙연산 수행

FastAPI 기본익히기

 

FastAPI란?

 

현대적이고, 빠르며(고성능), 파이썬 표준 타입 힌트에 기초한 Python3.6+의 API를 빌드하기 위한 웹 프레임워크

  • ASGI 애플리케이션

FastAPI는

  • 빠름: (Starlette과 Pydantic 덕분에) NodeJSGo와 대등할 정도로 매우 높은 성능. 사용 가능한 가장 빠른 파이썬 프레임워크 중 하나.
  • 빠른 코드 작성: 약 200%에서 300%까지 기능 개발 속도 증가. *
  • 적은 버그: 사람(개발자)에 의한 에러 약 40% 감소. *
  • 직관적: 훌륭한 편집기 지원. 모든 곳에서 자동완성. 적은 디버깅 시간.
  • 쉬움: 쉽게 사용하고 배우도록 설계. 적은 문서 읽기 시간.(그래도 어려움);
  • 짧음: 코드 중복 최소화. 각 매개변수 선언의 여러 기능. 적은 버그.
  • 견고함: 준비된 프로덕션 용 코드를 얻으십시오. 자동 대화형 문서와 함께.
  • 표준 기반: API에 대한 (완전히 호환되는) 개방형 표준 기반: OpenAPI (이전에 Swagger로 알려졌던) 및 JSON 스키마.

설치 환경 설정

 

※ Cmder와 vscode 를 활용하여 FastAPI 활용 

  • 파이썬 버전 확인(python3 –version)
  • Cmder으로 가상환경 설정하기 : python -m venv가상환경_이름
  • source /Users/juho/ai-x/fastapi_ex/fa_venv/bin/activate -> 가상환경 실행
  • mkdir fastapi_basic(프로젝트 디렉토리 생성) cd fastapi_basic(프로젝트 디렉토리로 이동)
  • 가상환경 안에 fastAPI 설치: pip install fastapi
  • fastAPI 웹서버 설치: pip install uvicorn
  • 터미널에서 실행코드: uvicorn main:app --reload
  • 실행파일의 위치와 디렉토리를 확인해서 실행해줘야한다

 

FastAPI - 매개변수

 

 실습을 위해 파일 생성 한 후

 

서버 실행하면(위 오른쪽에 재생아이콘이 있다.) 아래와 같이 콘솔창에 나오면 된다.

 

 

이제 매개변수 실습을 진행해보자



(1) 경로매개변수(Path Parameters)

 

  • URL 경로에 들어가는 변수

ex) 127.0.0.1/users/1 <- URL창에 user_id를 넣어주면 

브라우저에서  {"user_id": 1} 확인가능

 경로매개변수의 타입도 정해줄 수 있음

 

다른 타입의 매개변수를 넣으면 int_parsing 오류가 나오는 것을 확인해 볼 수 있다.



(2) 쿼리매개변수(Query parameters)

 

네이버에 apple을 검색한 URL주소를 예로 보면

 

https://search.naver.com/search?where=image&sm=tab_jum&query=apple

  • 호스트 주소 ? 뒤에 오는 변수들을 쿼리 매개변수(Query parameters)라고 함.
  • 각 매개변수는 & 기호로 구분되고 key=value 와 같이 키/값 쌍으로 정의

 

main2.py를 생성 후

 

서버를 실행시켜 

 

http://127.0.0.1:8000/users?limit=2 를 넣어보면 

 

{"limit":2}

{ “limit” : 2 }를 확인 가능하다.

 

{"limit":2}ㄹㅇㅁ너럼ㄴㅇ르ㅓㄹ{"limiㄹㅇㅁ나ㅓ론얼

 

댓글