2025. 8. 29. 10:50ㆍProgramming Language/Python
기존의 Request Body의 경우는 단일 건에 대해서만 처리를 하는 방식으로 구현했었다.
그러면 다수의 모델의 형태로 들어오는 Request Body를 받기 위해서는 어떻게 해야할까
여러개의 모델을 가져오는 Request Body를 처리하는 방법과 추가적인 기능에 대해서 한번 알아보자.
먼저 서버 세팅을 해주고
이제 살펴보도록 하자
1. 다중 매개변수
먼저 모델 두가지를 선언해주고
함수에 해당 모델을 받을수 있게 세팅해주자.
그리고 이에 맞게 request body를 구성하여 요청을 던져보면
이렇게 정상적으로 요청을 모델에 넣어 반환하는 것을 볼 수 있다.
정리하자면 다중 매개변수는 그냥 쓰면 된다...정도 인거같다.
2. 단일값을 Request Body에 같이 보내기
그러면 이제 여기서 추가로 단일 값을 받는 매개변수를 추가하면
이 값은 어떻게 받을 수 있을까
먼저 그냥 Request Body에 담아 보내보자.
보면 그냥 단순하게 추가한 값의 경우 FastAPI는 쿼리 스트링으로 올것을 기대한다.
그렇기에 서버에 저렇게 선언되어 있는 경우는
이렇게 쿼리스트링으로 보내야 한다.
그러면 바디에 넣어서 보내고 싶다면 어떻게 해야할까?
그럴 때는 fastapi의 Body모듈을 사용해야한다.
먼저 fastapi에서 Body를 import 하고
이렇게 선언해주면
이렇게 body에 담아 보낼 수 있게 된다.
3. 단일도 key-value값으로 전달하기
단일로 모델을 받는 경우는 아래와 같이 모델의 key값 없이 그냥 전달했을때 내부 값에 맞춰 내용을 받았었다
이번엔 이 값을 이전에 다수의 모델을 받는것 과 같이
이렇게 key-value 값으로 받을 수 있도록 해보려고 한다.
이 때도 Body가 사용되는데 Body의 인자중 하나인 embed에 True / False값을 통해서 이 방식을 변경할 수 있다.
'Programming Language > Python' 카테고리의 다른 글
FastAPI - example (1) | 2025.08.29 |
---|---|
FastAPI - 모델의 중첩 (0) | 2025.08.29 |
FastAPI - 경로 매개변수의 검증 (0) | 2025.08.27 |
FastAPI - 쿼리 매개변수 및 문자열 검증 (1) | 2025.08.27 |
FastAPI - Request Body (1) | 2025.08.27 |