고급 웹프로그래밍
FastAPI(Header)
rabbit-jun
2025. 4. 2. 15:07
Header()
@app.post("/hiheader")
def hi_header(who: str = Header()):
return {"message": f"{who}"}
이렇게 작성하면 FastAPI는 클라이언트가 보내는 HTTP 요청의 헤더에 'who' 라는 키가 있어야 값을 읽을 수 있다.
터미널에 curl -X POST http://127.0.0.1:8000/hiheader -H "who: python"
을 작성하면 {"message":"python"}
가 나오는 걸 확인 가능하다.
-H
: 요청 헤더를 지정
요청 예시 (HTTP 형태)
POST /hiheader HTTP/1.1
Host: localhost:8000
who: python
Content-Type: application/json
Body() vs Header()
항목 | Header | Body (본문) |
---|---|---|
위치 | HTTP 요청의 맨 위쪽 | 요청의 아래쪽 (본문 영역) |
형식 | Key: Value | JSON, 텍스트, 파일 등 다양한 형식 |
전송 방식 | -H "키:값" 으로 보냄 |
-d '내용' 또는 파일 업로드 등 |
FastAPI에서 받기 | Header() |
Body() |
예시 | who: python (헤더에 포함) |
"python" 또는 { "who": "python" } (본문) |
사용 용도 | 인증 토큰, 콘텐츠 정보 등 | 실제 데이터 전송 (예: 글 내용, 폼 입력 등) |
반응형