본문 바로가기
반응형

Fast API/fastapi배우기25

Fast API 배우기 5부 - Path 클래스 앞서 Query 클래스로 Query Parameter를 다루는법을 배웠다 똑같에 Path 클래스로 Path Parameter를 좀더 심도있게 다룰 수 있다 Metadata 선언하기 Query와 똑같이 title 에 메타데이터를 넣어주면 된다 item_id: int = Path(..., title="The ID of the item to get"), from typing import Optional from fastapi import FastAPI, Path, Query app = FastAPI() @app.get("/items/{item_id}") async def read_items( item_id: int = Path(..., title="The ID of the item to get"), q: Op.. 2021. 10. 21.
Fast API 배우기 4부 - Query 클래스 이번시간에는 Query Parameter를 좀더 심도있게 다뤄보자. 심도있게 다룬다는 말은 쿼리파라미터에 본래모습을 학습하고 여러 기능을 사용해보자는 의미 from typing import Optional from fastapi import FastAPI app = FastAPI() @app.get("/items/") async def read_items(q: Optional[str] = None): results = {"items": [{"item_id": "Foo"}, {"item_id": "Bar"}]} if q: results.update({"q": q}) return results 위 예제에서는 q가 쿼리 파라미터이고 Optional인 상황이다 Query 클래스 쿼리 파라미터를 심도있게 다루기 .. 2021. 10. 20.
Fast API 배우기 3부 - Request Body Request Body & Response Body란? Request Body : 클라이언트가 API로 데이터를 보낼때 사용되는 데이터 Response Body : API가 request의 응답으로 클라이언트에게 보내는 데이터 path 파라미터, query 파라미터는 url에서 어떤 데이터를 보내는지 볼 수 있다. 이 데이터들 말고 url에서 보이지 않는 데이터를 실어 보낼 때 body 파라미터를 사용한다고 생각하면 된다. API(백엔드)는 거의 모든경우에 response body를 클라이언트에게 보내야 한다. 하지만 클라이언트는 꼭 request body를 보내지 않아도 된다. fast api에서는 request body를 만들기 위해선 Pydantic models 를 사용한다 Pydantic의 Bas.. 2021. 10. 20.
Fast API 배우기 2부 - query parameters Query Parameter란? 함수에 사용되는 parameter인데 path parameter에 없는 파라미터를 의미한다 from fastapi import FastAPI app = FastAPI() fake_items_db = [{"item_name": "Foo"}, {"item_name": "Bar"}, {"item_name": "Baz"}] @app.get("/items/") async def read_item(skip: int = 0, limit: int = 10): return fake_items_db[skip : skip + limit] 위 코드에서 skip과 limit은 query로 값을 받는 파라미터이다. 저 skip과 limit에 값을 넣어주고 싶으면 ? 와 &를 이용한다. 아래와 같이.. 2021. 10. 19.
Fast API 배우기 1부 - 시작 및 path parameter Fast API란? 파이썬 웹 프레임워크중 가장 빠른속도를 지닌 프레임워크. Node.js와 Go와 속도가 맞먹는다 속도만 빠를뿐만 아니라 개발속도도 미치도록 빠르다 인터넷에 자료는 적지만 그걸 커버쳐줄만큼 document가 잘되어있다 1. 설치 두줄이면 끝. 쉽쥬? pip install fastapi pip install "uvicorn[standard]" 2. Hello World 출력하기 말도 안되게 간단하쥬? from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return {"message": "Hello World"} 아래 커맨드로 실행해보자 uvicorn main:app --reload 그리고 로컬서버로 접속!.. 2021. 10. 18.
반응형