목차
main.py
import fastapi
from fastapi.templating import Jinja2Templates
from fastapi import Request
from pydantic import BaseModel
from starlette.responses import HTMLResponse
app=fastapi.FastAPI()
template=Jinja2Templates('templates')
@app.get("/", tags=["Root"], summary="Root API", description="Hello World를 반환합니다.")
def index():
return HTMLResponse("<h1>Index page</h1>")
@app.get("/json")
def func02():
return {'key1':'val1','key2':{'item1','item2'}}
@app.get("/about", response_class=HTMLResponse,status_code=404)
def about()->str:
return '<h1>hello world 2</h1>'
@app.get('/intro')
def intro(request:Request):
return template.TemplateResponse('intro.html',{'request':request})
@app.get('/dept/{deptno}',response_class=HTMLResponse)
def detail(deptno:int):
return 'deptno'+str(deptno)
@app.get('/dept/')
def list(req:Request,p:int,kword:str='none key word'):
return {'page':p,'key':kword}
# @app.post('/dept/')
# def add(bean:dict):
# return {'result':bean}
class Dept(BaseModel):
deptno:int
dname:str
loc:str='default value'
@app.post('/dept/')
def add(dept:Dept,req:Request):
return {'result':dept}
'100일 챌린지 > 빅데이터기반 인공지능 융합 서비스 개발자' 카테고리의 다른 글
Day 87 - jwt (0) | 2024.12.02 |
---|---|
Day 87 - fastapi로 CRUD 프로그램 만들기 (0) | 2024.12.02 |
Day 86 - fastAPI 사용하기 (1) (1) | 2024.11.29 |
Day 86 - django로 CRUD+login 프로그램 만들기 (2) (0) | 2024.11.29 |
Day 85 - Django migrate (0) | 2024.11.28 |