
Flask의 세션 기능은 세션 데이터를 serialize하는 방법을 지정하기 위해 serialize_handler 옵션을 제공합니다. 디폴트 값은 'pickle'입니다. 하지만 'pickle'은 보안에 취약하므로, 세션 데이터를 JSON 형식으로 serialize하는 방법을 사용하는 것이 좋습니다.
Flask에서 세션 데이터를 JSON 형식으로 serialize하는 방법은 다음과 같습니다.
1. `Flask` 객체에 `serialize_handler` 옵션을 설정합니다.
#hostingforum.kr
python
from flask import Flask
from flask_session import Session
app = Flask(__name__)
app.config["SESSION_PERMANENT"] = False
app.config["SESSION_TYPE"] = "filesystem"
app.config["SESSION.serialize_handler"] = "json"
Session(app)
2. 세션 데이터를 JSON 형식으로 serialize하는 데 사용할 라이브러리를 설치합니다. 예를 들어, `ujson` 라이브러리를 사용할 수 있습니다.
#hostingforum.kr
bash
pip install ujson
3. `ujson` 라이브러리를 사용하여 세션 데이터를 JSON 형식으로 serialize하는 함수를 정의합니다.
#hostingforum.kr
python
import ujson
def serialize_data(data):
return ujson.dumps(data)
4. `serialize_data` 함수를 `Flask` 객체의 `serialize_handler` 옵션에 등록합니다.
#hostingforum.kr
python
app.config["SESSION.serialize_handler"] = serialize_data
이러한 방법으로 Flask의 세션 기능에서 세션 데이터를 JSON 형식으로 serialize할 수 있습니다.
2025-04-16 07:11