Декодирование pako deflate, gzip в python
Для уменьшения веса данных с моего фронт-сервера должны отправляться закодированные данные, я хочу использовать для этого pako deflate или gzip.
const compressed = deflate(JSON.stringify({
project: projectId,
title: screen.title,
}, {to: "string"}));
const res = await fetch(
screensApiConfg.SCREENS_PATHS.create(),
{
credentials: "include",
method: "POST",
body: JSON.stringify(compressed),
headers: {
"Content-Type": "application/json",
},
},
);
После кодирования я получил следующее:
Uint8Array(43) [120, 156, 171, 86, 42, 40, 202, 207, 74, 77, 46, 81, 178, 50, 50, 212, 81, 42, 201, 44, 44, 201, 73, 85, 178, 82, 114, 43, 74, 204, 77, 85, 176, 52, 55, 84, 170, 5, 0, 205, 0, 10, 190, буфер: ArrayBuffer(43), byteLength: 43, byteOffset: 0, length: 43]
Я передаю эти данные в мой django backend. Как я могу декодировать эти данные обратно, я пытался использовать zlib.decompress, но это не сработало для меня.
class CreateScreenApi(generics.CreateAPIView):
serializer_class = ScreenSerializer
def post(self, request, *args, **kwargs):
print(request.data)
data = list(request.data.values())
print(data)
Сначала я получаю данные в виде словаря, а затем перевожу их в список. Dict:
{'0': 120, '1': 156, '2': 171, '3': 86, '4': 42, '5': 40, '6': 202, '7': 207, '8': 74, '9': 77, '10': 46, '11': 81, '12': 178, '13': 50, '14': 50, '15': 212, '16': 81, '17': 42, '18': 201, '19': 44, '20': 201, '21': 73, '22': 85, '23': 178, '24': 82, '25': 114, '26': 43, '27': 74, '28': 204, '29': 77, '30': 85, '31': 176, '32': 52, '33': 52, '34': 55, '35': 84, '36': 170, '37': 5, '38': 0, '39': 205, '40': 0, '41': 10, '42': 190}
List:
[120, 156, 171, 86, 42, 40, 202, 207, 74, 77, 46, 81, 178, 50, 50, 212, 81, 42, 201, 44, 201, 73, 85, 178, 82, 114, 43, 74, 204, 77, 85, 176, 52, 52, 55, 84, 170, 5, 0, 205, 0, 10, 190]
Что мне делать дальше, не могли бы вы мне помочь.