๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐™‹๐™ฎ๐™ฉ๐™๐™ค๐™ฃ/๐™๐™–๐™จ๐™ฉ ๐˜ผ๐™‹๐™„

Fast API ๊ณต๋ถ€ํ•ด๋ณด๊ธฐ #1 ํŠน์ง• ๋ฐ ์„ค์น˜

by beomcoder 2023. 2. 22.
728x90
๋ฐ˜์‘ํ˜•

๋ฐฑ์—”๋“œ๋กœ Django, flask๋งŒ ์‚ฌ์šฉํ•˜๋‹ค๊ฐ€ ๊ฐ€๋ณ๊ฒŒ ์‚ฌ์šฉํ•˜๊ธฐ์—

Fast API๋„ ์ข‹๋‹ค๊ณ  ํ•˜์—ฌ ํ•œ๋ฒˆ ๊ณต๋ถ€ํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค.

 

์ฃผ์š” ํŠน์ง•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค๊ณ  ํ•œ๋‹ค.

์šฐ์„ ์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์„ค์น˜ํ•ด์ฃผ์—ˆ๋‹ค.

 

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def root():
    return {"message": "Hello World"}

๊ทธ๋ฆฌ๊ณ  main.py๋ฅผ ๋งŒ๋“ค์–ด์„œ ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•ด๋ณด๋ฉด ๋œ๋‹ค.

๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ์ฝ”๋“œ๋ผ๊ณ  ํ•œ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  ํ„ฐ๋ฏธ๋„์— uvicorn main:app --reload ์„ ์ž…๋ ฅํ•˜๋ฉด ๋œ๋‹ค. ์˜ˆ์ œ๋Œ€๋กœ ๋งŒ๋“ค์ง€ ์•Š์•˜๋‹ค๋ฉด ์กฐ๊ธˆ ๋‹ค๋ฅด๋‹ค.

study.py๋กœ ๋งŒ๋“ค์—ˆ๋‹ค๋ฉด uvicorn study:app --reload์ด๊ณ ,

app = FastAPI()๋ฅผ my_app = FastAPI()๋ผ๊ณ  ํ–ˆ๋‹ค๋ฉด uvicorn study:my_app --reload ์ด๋‹ค.

 

 

ํ„ฐ๋ฏธ๋„ ์ž…๋ ฅํ•œ ๊ณณ ์•„๋ž˜ http://127.0.0.1:8000 ๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋‚ด๊ฐ€ return ํ•œ ๊ฐ’์ด ์ถœ๋ ฅ๋œ๋‹ค.

 

Fast API๋ฅผ ๊ณต๋ถ€ํ•ด๋ณด๊ณ ์ž ํ•œ ์ด์œ ๋Š” ์ž๋™์œผ๋กœ ๋ฌธ์„œ๋ฅผ ๋งŒ๋“ค์–ด์ค€๋‹ค๋Š” ์ ์ด์—ˆ๋‹ค.

Django๋‚˜ flask๋กœ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด api ๋ช…์„ธ์„œ๋ฅผ ์ ์–ด์ค˜์•ผ ํ•˜๋Š”๋ฐ ๊ท€์ฐฎ์•˜๋‹ค.

ํ•˜์ง€๋งŒ Fast API๋Š” http://127.0.0.1:8000/docs๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๋œ๋‹ค.

 

 

 

Fast API ๊ณต๋ถ€ํ•ด๋ณด๊ธฐ #2 ๊ฒฝ๋กœ ๋™์ž‘ ์ƒ์„ฑ

Fast API ๊ณต๋ถ€ํ•ด๋ณด๊ธฐ #1 ํŠน์ง• ๋ฐ ์„ค์น˜ ๋ฐฑ์—”๋“œ๋กœ Django, flask๋งŒ ์‚ฌ์šฉํ•˜๋‹ค๊ฐ€ ๊ฐ€๋ณ๊ฒŒ ์‚ฌ์šฉํ•˜๊ธฐ์— Fast API๋„ ์ข‹๋‹ค๊ณ  ํ•˜์—ฌ ํ•œ๋ฒˆ ๊ณต๋ถ€ํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ์ฃผ์š” ํŠน์ง•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค๊ณ  ํ•œ๋‹ค. ์šฐ์„ ์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ

beomcoder.tistory.com

 

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€