JavaScript Раскодировать BSON в JSON

244
10 марта 2018, 21:15

Есть строка в формате BSON (закодированная в base64), как раскодировать ее в JSON-строку?

Строка в таком виде

ugEAAAMwAGsAAAACX2lkAAsAAAAxNUdaczF4UWt3AAJVc2VyQnVpbGQAJQAAADRlMTI3VzEwN3M2N1MxYjc4ZjEwM1U5MHkzN3cxMDBlMTE5ZwAIVXNlckZ1bGxBY2Nlc3MAAQhVc2VyQ2FuQWRkAAAAAzEAagAAAAJfaWQACwAAADV2QlV2ZWdsVm4AAlVzZXJCdWlsZAAkAAAANzF6MTIySjEwM1Y2OFI4MmU4M2o4NWI5OHE2MG45Nms1MloACFVzZXJGdWxsQWNjZXNzAAAIVXNlckNhbkFkZAAAAAMyAGoAAAACX2lkAAsAAAAwWk81anpwb3MzAAhVc2VyRnVsbEFjY2VzcwABAlVzZXJCdWlsZAAkAAAAMTA3TTEyMEwxUDg4WjY3czczQTk0ZDcwRTk3ajEwMWsyNEUACFVzZXJDYW5BZGQAAAADMwBqAAAAAl9pZAALAAAAb0prbDhyZk9GbwACVXNlckJ1aWxkACQAAAAxMjNXODNkOTRpMTRPNjVMOTRFMTI1VTExM3Y2MXU1OFQ4VQAIVXNlckZ1bGxBY2Nlc3MAAQhVc2VyQ2FuQWRkAAAAAA==

В документации сказано, что это:

bson результат запроса, закодированный в base64

Как это раскодировать в JSON?

(Вопрос подобен этому, но там для Delphi)

Answer 1

есть функции для работы с бейс 64.

WindowBase64

а после уже и превращай джейсон в объект и работай.

Answer 2

Решил

Код этого файла + эта функция:

function myFunction(str) {
    var BSON = bson().BSON;
    var rawBytes = window.atob(str);
    var uintArray = new Uint8Array(rawBytes.length);
    for (var i = 0; i < rawBytes.length; i++)
    {
        uintArray[i] = rawBytes.charCodeAt(i);
    }
    var doc_2 = BSON.deserialize(uintArray);
    return JSON.stringify(doc_2, null, 4);
  }
READ ALSO
this в стрелочной функции при работе с DOM

this в стрелочной функции при работе с DOM

Не могу понять, почему стрелочная функция иначе работает с thisПростой пример:

199
jQuery: добавление стилей на страницу

jQuery: добавление стилей на страницу

ЗдравствуйтеЯ подключаю стили к своему веб-приложению с помощью js

305