Класс ORJSONResponse
Класс ORJSONResponse применяется для возврата JSON-ответа,
при сериализации которого используется библиотека orjson.
Она работает быстрее стандартного модуля json и поддерживает
больше типов данных. Класс наследуется от JSONResponse,
поэтому принимает те же параметры: content с данными,
status_code, headers, media_type и background.
Для работы класса требуется установить библиотеку orjson.
Синтаксис
from fastapi.responses import ORJSONResponse
ORJSONResponse(content, status_code=200, headers=None, media_type=None, background=None)
Установка
Перед использованием класса установите библиотеку orjson:
pip install orjson
Пример
Давайте вернём ORJSONResponse из обработчика маршрута:
from fastapi import FastAPI
from fastapi.responses import ORJSONResponse
app = FastAPI()
@app.get('/')
def index():
return ORJSONResponse(content={'text': 'hello'})
Результат выполнения кода:
{"text": "hello"}
Пример
Давайте зададим собственный код статуса status_code:
from fastapi import FastAPI
from fastapi.responses import ORJSONResponse
app = FastAPI()
@app.get('/')
def index():
return ORJSONResponse(
content={'text': 'hello'},
status_code=201
)
Результат выполнения кода:
{"text": "hello"}
Пример
Давайте вернём список значений через ORJSONResponse:
from fastapi import FastAPI
from fastapi.responses import ORJSONResponse
app = FastAPI()
@app.get('/items')
def items():
data = ['a', 'b', 'c', 'd', 'e']
return ORJSONResponse(content=data)
Результат выполнения кода:
["a", "b", "c", "d", "e"]
Смотрите также
-
класс
Response,
который является базовым для всех ответов FastAPI -
класс
JSONResponse,
который формирует стандартный JSON-ответ -
класс
ORJSONResponse,
который формирует быстрый JSON-ответ через orjson -
класс
UJSONResponse,
который формирует JSON-ответ через ujson