Запись данных в файл после их получения на сервере Flask

Рейтинг: 0Ответов: 1Опубликовано: 21.03.2023

Как записать полученные на сервере данные в файл. В моем варианте, при попытке записи в файл, я получаю ошибку 500 на сервере. Ошибка именно в этой строке, поскольку если я комментирую строку с записью файла, то все срабатывает.

from flask import Flask, jsonify, request

app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

@app.route('/save', methods = ['POST'])
def save_config():
  request_data = request.get_json()
  custom_config = open("custom_config.json", "w+")
  custom_config.write(request_data)
  custom_config.close()

  return request_data

if __name__ == "__main__":
  app.run(host='127.0.0.1', port=5002)

Ответы

▲ 0Принят

Судя по всему, вы хотите записать json, для этого лучше использовать соответствующую стандартную библиотеку:

import json

with open("custom_config.json", "w") as custom_config:
    json.dump(request_data, custom_config, ensure_ascii=False, indent=4)