Backend/Fast API
-
[Fast API] ValidationsBackend/Fast API 2021. 7. 9. 04:47
각각의 Parameters는 인자로 받을 데이터에 대해 여러가지 조건을 걸어 validations(유효성 검사)를 수행할 수 있습니다. 만일 incorrect한 데이터가 감지될 경우 validation에 의해 error가 응답됩니다. 1. Parameter의 종류를 선언하는 함수 앞에서 살펴봤듯이 parameter는 path parameter, query parameter, request body parameter 등 여러가지 형태의 종류가 존재합니다. 이외에도 cookie parameter, header parameter등 더 다양한 형태가 존재하는데, 이러한 parameter를 조금 더 명시적으로 선언할 수 있게 도와주는 함수가 각각 존재합니다. from typing import Optional ..
-
[Fast API] Parameters of Path, Query, Request bodyBackend/Fast API 2021. 7. 9. 04:43
1. Path Parameters Path Parameters의 정의와 형태 Path parameter는 path 내에 들어있는 variable의 value를 전달받은 parameter를 말합니다. @app.get("/items/{item_id}") def read_item(item_id): return {"item_id": item_id} 위의 코드에서, item_id는 path parameter에 해당합니다. HTTP 요청이 들어오면 해당 URL에서 {item_id}에 해당하는 value를 획득하고, 이 value는 read_item함수의 item_id에 인자로 전달됩니다. 위의 코드를 main.py에 추가해 저장한 후, http://127.0.0.1:8000/items/foo에 들어가면 respon..
-
[Fast API] InstallationBackend/Fast API 2021. 7. 9. 04:40
Fast API 튜토리얼 - Installation Fast API 공식 문서의 튜토리얼을 살펴보고 정리합니다. 본 글은 윈도우 환경을 기준으로 작성되었습니다. Fast API 설치하기 앞에서는 간단히 Fast API와 uvicorn만 설치하여 진행했지만, 이번엔 튜토리얼을 편하게 진행하기 위해 Fast API와 이에 따른 의존 관계가 있는 모듈들을 한꺼번에 설치하겠습니다. 가상환경을 사용한다면 활성화시켜주시고, [all] 옵션을 사용해 Fast API와 관련 모듈들을 한번에 설치합니다. > pip install fastapi[all] 이 때 uvicorn 서버도 함께 설치되기 때문에, 따로 uvicorn을 설치할 필요없이 프로젝트 디렉토리에 main.py 파일만 만들고 바로 서버를 구동할 수 있습니..
-
[Fast API] IntroBackend/Fast API 2021. 7. 9. 04:25
Fast API란? 파이썬으로 API를 만들기 위한 웹프레임워크입니다. 현재 파이썬 웹 프레임워크들 중 가장 빠른 속도를 보입니다. Node.js, Go와 대등할 정도의 높은 성능 Automatic한 API Document를 지원 (Swagger UI, ReDoc에서 제공) pydantic을 활용해 type hint를 지원 에디터에서 지원되는 Auto Completion 기능이 훨씬 강력해짐 Python 3.6 이상부터 지원 Fast API with Open API Specification Fast API에서 API를 정의할 때 사용하는 schema(어떠한 개념에 대한 추상적인 기술)는, Open API Specification을 따릅니다. Open API Specification은 Linux 재단에서 ..