Develop/FastAPI

FastAPI - Swagger, HTTP 요청 관련 - 03

동석해요 2022. 12. 20. 00:19
728x90
SMALL
실무에서 FastAPI를 채택 하는 이유(문서 자동화)

FastAPIOpenAPI를 채택하고 있어, 이를 기반으로 자신의 코드를 읽어 OpenAPI 규격에 맞는 json 파일을 만들어주기 때문에 백엔드 엔지니어가 문서 작업에 할애하는 시간을 줄일 수 있다.

 

 

1. OpenAPI란?

  • OpenAPI 또는 OpenAPI Specification(OAS)라고 부름
  • RESTful API를 기 정의된 규칙에 맞게 API spec을 json이나 yaml로 표현하는 방식

2. OpenAPI Document Defines

  • Schema
  • Data Format
  • Data Type
  • Path
  • Object
  • And much more

 

2. View OpenAPI Schema

  • FastAPI는 OpenAPI Schema를 생성
  • 애플리케이션 내에서 프로젝트의 URL로 이동해서 OpenAPI 표준을 볼 수 있다.
    • http://127.0.0.1:8000/openapi.json
    • http://127.0.0.1:8000/docs
    • http://127.0.0.1:8000/redoc
출처 -  https://buzzni.com/blog/47

 

3. Swagger-UI

  • FastAPI를 실행 후 http://127.0.0.1:8000/docs 접속
  • 사용 중인 API를 바로 볼 수 있고 요청이 어떻게 보여야 하는지, 응답이 어떻게 보여야 하는지 알 수 있다.
  • http://127.0.0.1:8000/docs 사이트 내에서 API를 호출 할 수 있음.
Swagger란(API 문서화 도구)

- Swagger 는 REST API를 설계, 빌드, 문서화 및 사용하는 데 도움이되는 OpenAPI 사양을 중심으로 구축 된 오픈 소스 도구 세트
- 테스트 할 수 있는 UI를 제공 ex) http://127.0.0.1:8000/docs
- 문서 화면에서 API를 바로 테스트 할 수 있다.

 

4. FastAPI uses HTTP Request methods

  • GET -> 데이터 호출
  • POST -> 데이터 생성
  • PUT -> 리소스 업데이트
  • PATCH -> 일부 리소스 업데이트
  • DELETE -> 리소스를 삭제
  • TRACE
  • OPTIONS
  • CONNECT

=> 통틀어서 CRUD 작업으로도 불림

 

5. FastAPI Response Status Code

  • 1xx -> 서버가 요청을 처리 중(교환 실패 x)
  • 2xx -> 서버간 교환 성공
  • 3xx -> 리디렉션(추가작업)
  • 4xx -> 요청 에러
  • 5xx -> 서버 에러

 

728x90
SMALL