Подтвердить что ты не робот

Является ли бинарная JSON-библиотека JavaScript доступной для браузеров?

Для эффективного анализа на стороне сервера я рассматриваю решение BSON непосредственно для среды javascript браузера. Идея состоит в том, чтобы использовать все пространство ASCII с помощью двоичных веб-узлов. Любые предложения?

(Любые предложения nodejs также приветствуются)

См. также: http://bsonspec.org/

4b9b3361

Ответ 1

Это может быть неполно, но цель проекта заключается в том, что вы хотите: https://github.com/muhmi/javascript-bson Это не похоже на то, что кодирует непосредственно набранные массивы, которые были бы наиболее полезны для отправки через WebSocket.

Ответ 2

Для чего это стоит, похоже, что команда MongoDB теперь имеет поддерживаемый Javascript BSON проект:

https://github.com/mongodb/js-bson

Я не эксперт в библиотеке, но проект утверждает, что работает как в Node, так и в браузере. Ниже представлен модифицированный образец со своего сайта:

<head>
  <!-- Originally https://raw.github.com/mongodb/js-bson/master/browser_build/bson.js -->
  <!-- But downloaded and hosted locally -->
  <script src="./bson.js"></script>
</head>
<body onload="start();">
<script>
  function start() {
    var BSON = bson().BSON;
    var Long = bson().Long;

    var doc = {
      oid: bson().ObjectID(),
      long: Long.fromNumber(100),
      date: new Date(),
      string: "js-bson sample",
      obj: { 
        string: "Object within an object"
      }
    }
    console.log("doc %o", doc);

    // Serialize a document
    var data = BSON.serialize(doc, false, true, false);
    console.log("data %o", data);

    // De serialize it again
    var doc_2 = BSON.deserialize(data);
    console.log("doc_2 %o", doc_2);
  }
</script>
</body>

Ниже приведены мои результаты в Chrome:

enter image description here

Ответ 3

Здесь в 2019 году современные браузеры уже имеют встроенные функции:

btoa("string to be coded on base64 format") 
atob("base64 string to be uncoded")