自分用めも

初心者ちっくなプログラムネタを中心に、自分用の覚え書きをメモっていくための場所です。

flaskのAPI返却値の日本語が文字化けする場合の対処

python:3.10-bullseye。(Docker image)
flask==2.2.2。

flaskにはJSONの返却値をASCII文字列にエンコードして返却する、JSON_AS_ASCIIという設定がある。
これはデフォルトでTrueになっている。
https://flask.palletsprojects.com/en/latest/config/#JSON_AS_ASCII

JSON_AS_ASCII = Trueの場合

下記のように返却される。

["\u30c6\u30b9\u30c8"]

対処としてflaskの設定で明示的にfalseにすると、結果的に文字化けが解消する。

app.config.from_mapping(
    JSON_AS_ASCII=False,
)

JSON_AS_ASCII = Falseの場合

下記のように返却される。

["テスト"]