РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
107 of 643 menu

Метод get_json

Метод get_json применяется к объекту ответа Response и извлекает из его тела данные формата JSON, преобразуя их в Python-объект. Первым параметром передаётся force - если он равен True, метод попытается разобрать тело как JSON даже при неверном заголовке Content-Type. Вторым параметром идёт silent - если он равен True, метод вернёт None вместо исключения при ошибке разбора.

Синтаксис

response.get_json(force=False, silent=False, cache=True)

Пример

Давайте создадим ответ с JSON-телом и извлечём из него данные:

from flask import Flask, Response import json app = Flask(__name__) @app.route('/') def index(): data = {'name': 'user', 'age': 25} res = Response( json.dumps(data), mimetype='application/json' ) parsed = res.get_json() return str(parsed)

Результат выполнения кода:

{'name': 'user', 'age': 25}

Пример

Давайте разберём JSON-массив, полученный в ответе:

from flask import Flask, Response import json app = Flask(__name__) @app.route('/') def index(): data = ['a', 'b', 'c', 'd', 'e'] res = Response( json.dumps(data), mimetype='application/json' ) parsed = res.get_json() return str(parsed)

Результат выполнения кода:

['a', 'b', 'c', 'd', 'e']

Пример

Давайте используем параметр silent, чтобы избежать исключения при неверном JSON:

from flask import Flask, Response app = Flask(__name__) @app.route('/') def index(): res = Response( 'not a json', mimetype='text/plain' ) parsed = res.get_json(silent=True) return str(parsed)

Результат выполнения кода:

None

Смотрите также

  • класс Response,
    который представляет HTTP-ответ в Flask
  • атрибут json,
    который хранит JSON-представление ответа
  • метод get_data,
    который возвращает тело ответа как байты
  • метод set_data,
    который устанавливает тело ответа
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить