Как обрезать данные JSON без потери целых частей объекта JSON - PullRequest
0 голосов
/ 19 сентября 2019

У меня есть JSON Object , который мне нужен, чтобы убедиться, что размер меньше 30 КБ :

var obj = {
   "values":[
       {"key1": "Lorem ipsum..."},
       ...
       {"key100": "Lorem ipsum..."} // can be any size
   ],
   "message": "Lorem ipsum...", // can be any size
   "meta": "lorem ipsum..." // can be any size
}

Я мог бы использовать JSON.stringify(obj); и просто обрезатьстрока, но это может потенциально вырезать целые значения (aka. meta, message) в объекте.Вместо этого мне нужно обрезать каждое значение объекта по отдельности, если размер объединенного строкового объекта превышает 30 КБ.

Пример: Каждое значение имеет следующие размеры:

obj.values // Size: 2kb
obj.message // Size: 28kb
obj.meta // Size: 4kb

Мне нужно усечь obj.message до 24 КБ

Пример 2 :

obj.values // Size: 80kb
obj.message // Size: 40kb
obj.meta // Size: 4kb

Мне нужно усечь obj.values до 8,6, obj.message вниз17.2.

Итак, я получу: 8.6kb (значения) + 17.2kb (сообщение) + 4kb (мета) ~ = 30kb или меньше.


Я работаю над этимиспользуя JavaScript .

Будет работать простая функция:

let truncateObj = (obj) => {
   if(xyz){
      {magic code}
   }
   return obj; // magically truncated object :)
}

Спасибо заранее за просмотр этого !!!

...