반응형 fast api5 Fast API 배우기 6부 - Body 클래스 앞서 Query와 Path를 좀더 심도있게 배웠다. 이번에는 Request Body를 좀더 심도있게 다뤄보자 Query, Path, Request Body 함께 사용하기 Query와 Path 파라미터를 함께 사용한것처럼 Request Body도 함수인자에 조합하여 사용 가능하다 from typing import Optional from fastapi import FastAPI, Path from pydantic import BaseModel app = FastAPI() class Item(BaseModel): name: str description: Optional[str] = None price: float tax: Optional[float] = None @app.put("/items/{item_id.. 2021. 10. 21. 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. 이전 1 다음 반응형