web-dev-qa-db-ja.com

バイナリJSONjavascriptライブラリはブラウザで利用できますか?

サーバー側の解析を効率的に行うために、ブラウザーのJavaScript環境用のBSONソリューションを直接調べています。アイデアは、バイナリWebSocketを使用してASCIIスペース全体を利用することです。何か提案はありますか?

(nodejsの提案も歓迎します)

参照: http://bsonspec.org/

19
Lorenz Lo Sauer

これは不完全かもしれませんが、プロジェクトの目標はあなたが望むものと一致します: https://github.com/muhmi/javascript-bson それは型付き配列に直接エンコードするようには見えませんWebSocketを介して送信するのに最も便利です。

6
kanaka

その価値については、MongoDBチームがサポートされているJavascriptBSONプロジェクトを持っているようです。

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

11
jriggins