hy30nq's blog

Flask에서 make_response() 함수 사용하기: 예시와 함께 알아보기 본문

Web/web dev

Flask에서 make_response() 함수 사용하기: 예시와 함께 알아보기

hy30nq 2024. 6. 14. 22:45
728x90

안녕하세요 여러분! 🥳
오늘은 Flask 프레임워크에서 make_response() 함수를 사용하는 방법에 대해 자세히 알아보려고 해요. 이 함수는 HTTP 응답을 생성할 때 매우 유용한데요, 상태 코드와 헤더를 자유롭게 설정할 수 있답니다. 예시와 함께 알아볼 테니, 천천히 따라와 주세요!

1. 기본 사용법

먼저, make_response() 함수의 기본 사용법을 살펴볼게요. 이 함수는 다음과 같이 사용한답니다:

from flask import Flask, make_response

app = Flask(__name__)

@app.route('/response')
def response_example():
    resp = make_response("Hello with header", 200)
    resp.headers['Custom-Header'] = 'custom-value'
    return resp

위 코드에서는 make_response() 함수를 이용해 응답 객체를 생성했어요. 응답 내용으로 "Hello with header" 문자열을, 상태 코드로 200(OK)을 지정했죠. 그리고 커스텀 헤더인 Custom-Header에 'custom-value'를 설정했답니다.

2. 직접 헤더 전달하기

make_response() 함수는 헤더를 직접 인자로 전달할 수도 있어요. 이렇게 하면 생성된 응답 객체에 나중에 헤더를 추가할 필요가 없답니다.

from flask import Flask, make_response

app = Flask(__name__)

@app.route('/direct')
def direct_example():
    headers = {'X-Example': 'DirectHeader'}
    return make_response("Direct Response", 200, headers)

이 예제에서는 headers 딕셔너리를 만들어 헤더를 직접 설정했어요. X-Example 헤더에 'DirectHeader' 값을 지정했답니다. 그 후, make_response() 함수의 인자로 전달해 응답을 생성했죠.

3. 커스텀 헤더 추가하기

생성된 응답 객체에 나중에 헤더를 추가하는 방법도 있어요. 이 방법은 상황에 따라 유용하게 사용할 수 있답니다.

from flask import Flask, make_response

app = Flask(__name__)

@app.route('/custom')
def custom_example():
    response = make_response("Custom Response", 200)
    response.headers['X-Example'] = 'CustomHeader'
    return response

위 코드에서는 응답 객체를 생성한 후, headers 속성을 이용해 X-Example 헤더에 'CustomHeader' 값을 추가했어요. 이렇게 하면 유연하게 응답을 설정할 수 있답니다.

결론

오늘은 Flask에서 make_response() 함수를 사용하는 방법에 대해 알아봤어요. 상태 코드와 헤더를 자유롭게 설정하는 방법을 배웠고, 여러 가지 예시를 통해 직접 적용해봤답니다. Flask를 사용하면서 유용하게 활용해보세요! 😊

728x90