4. Response Cookies
1. Response Cookies
2. Use a Response
parameter
- path operation function에서
Response
타입의 매개변수를 선언할 수 있다.
- 그런 다음 해당 임시 response 객체에 cookies를 설정할 수 있다.
from fastapi import FastAPI, Response
app = FastAPI()
@app.post("/cookie-and-object/")
def create_cookie(response: Response):
response.set_cookie(key="fakesession", value="fake-cookie-session-value")
return {"message": "Come to the dark side, we have cookies"}
- 위의 예제와 같이 일반적인 모든 객체를 반환할 수 있다.
- 그리고
response_model
을 선언했다면, 반환된 객체를 필터링하고 변환하는 데 사용된다.
- FastAPI는 해당 임시 response를 사용하여 cookies를 추출하고,
response_model
로 필터링되어 반환된 값이 포함된 최종 response에 cookies를 넣는다.
- 또한 dependencies에서 매개변수
Response
를 선언하고 cookies를 설정할 수도 있다.
3. Return a Response
directly
- 코드에서 직접
Response
를 반환할 때 cookies를 생성할 수도 있다.
from fastapi import FastAPI
from fastapi.responses import JSONResponse
app = FastAPI()
@app.post("/cookie/")
def create_cookie():
content = {"message": "Come to the dark side, we have cookies"}
response = JSONResponse(content=content)
response.set_cookie(key="fakesession", value="fake-cookie-session-value")
return response
References