전주호
WebSurf
전주호
전체 방문자
오늘
어제
  • 분류 전체보기 (63)
    • CS (1)
    • 프로그래밍 언어 (3)
      • JAVA (1)
      • Python (2)
    • WEB (35)
      • Spring (21)
      • FastAPI (1)
      • React (4)
    • Git (1)
    • Database (2)
    • Cloud (4)
    • Docker (0)
    • Linux (0)
    • AI (8)
      • ComputerVision (3)
      • CUDA (1)
      • Anaconda (1)
      • NLP (1)
    • ETC (9)
    • Project (0)
      • GolaBlur (0)
    • 알고리즘 문제 풀이 (0)
      • 프로그래머스 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • MobileFaceSwap
  • AWS
  • API
  • 단위테스트
  • 스프링
  • Internet
  • db
  • web
  • jpa
  • 백엔드로드맵
  • AI
  • react
  • PYTHON
  • EC2
  • junit
  • Spring Security
  • cloud
  • spring
  • conda
  • 테스트
  • 백엔드
  • websocket
  • springboot
  • S3
  • jwt
  • http
  • oauth2
  • 문제해결
  • 트러블슈팅
  • 클라우드

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
전주호

WebSurf

WEB/FastAPI

[FastAPI] Fast API 시작하기

2023. 6. 3. 16:26
반응형

 

 

설치

pip install fastapi

pip install "uvicorn[standard]"

 

아래에 있는 uvicorn은 

Fast API를 웹 서버에 올려주는 역할을 한다.

 

만약 CLI앱을 구현하고자 한다면

 Typer를 설치하자.

https://typer.tiangolo.com/

 

Typer

Typer, build great CLIs. Easy to code. Based on Python type hints.

typer.tiangolo.com

 

 

구현

main.py 파이썬 파일을 만들어보자.

from fastapi import FastAPI

app = FastAPI()


@app.get("/")
def read_root():
    return {"Hello": "World"}

 

이러면 엔드포인트에대한 구현은 끝났다!

 

함수위에 어노테이션만 추가해주면 된다.

 

 

실행

 

uvicorn main:app --reload

 

여기서 main은 해당 파일의 이름이다.

 

app은 FastAPI()를 호출한 변수이다.

app = FastAPI()

 

--reload 옵션은 파일이 저장될 시에 서버가 자동으로 리로딩된다.

엄청 편하다아아~~~

 

http://127.0.0.1:8000/

로 접속해본다.

 

 

Intgeractive API 문서와 Alternative API 문서를 통해서도 API를 확인할 수 있다.

 

Intgeractive API

http://127.0.0.1:8000/docs

 

Alternative API 문서

http://127.0.0.1:8000/redoc

 

 

 

배포

지금 실행은 로컬에서의 실행이라면

배포를 통해 외부에서 접근할 수 있도록 ip를 개방해주자.

 

uvicorn main:app --host=0.0.0.0 --port=8000

host 옵션에 고정 ip값을 입력해주고

port 옵션에 원하는 포트번호를 입력해주면

 

ip의 8000번 포트로 접근할 수 있다!!

 

 

 

 

 

Reference

https://fastapi.tiangolo.com/ko/

 

FastAPI

FastAPI FastAPI 프레임워크, 고성능, 간편한 학습, 빠른 코드 작성, 준비된 프로덕션 문서: https://fastapi.tiangolo.com 소스 코드: https://github.com/tiangolo/fastapi FastAPI는 현대적이고, 빠르며(고성능), 파이썬

fastapi.tiangolo.com

 

반응형
    전주호
    전주호

    티스토리툴바