2016-04-05 49 views
1

MongodbとBackend Developmentの新機能です。私はユーザーがjsonを作成できるシステムを作成しました。私はjsonをデータベースに保存していますが、データを取得すると、データはバイナリデータとして表示されます。これをJSONに変換するにはどうすればいいですか?コンバータはオンラインではありません、私は広範囲にGoogleを持っています。ありがとう。JSONファイルをバイナリ形式で保存しているMongodb

これは私が戻ってくるものです。

{_bsontype 'バイナリ' sub_type:0、 位置:1269、 バッファ:}

これはモデルである

// app/models/project.js 
    // load the things we need 
var mongoose = require('mongoose'); 

// define the schema for our project model 
    var projectSchema = mongoose.Schema({ 


      id  : String, 
      allwork :[ 
         { 

             protocol  : String, 
            name   : String, 
            json   : Object 
        } 
        ] 



    }); 



    // create the model for users and expose it to our app 

    module.exports = mongoose.model('Project', projectSchema); 

このクエリ

var Project = require('./app/models/project'); 
    Project.findOne({ 'id' : 'pop' }, function(err, callback) { 
    if (err) return "Error searching person"; 
    if(callback) { 
     console.log(callback.allwork); 
     for(var i = 0; i < callback.allwork.length; i++) { 
      if(callback.allwork[i].name == "zingzong"){ 

      console.log(callback.allwork[i].json); 

     } 
    } 
//socket.emit('callback_allwork', callback.allwork); 
    } 
    }); 
    }); 
あります

これは、私が元々保存したjsonではなくバイナリデータでバッファを記録します。

これは、あなたがjson: Stringjson: Objectを変更する必要があり、JSON

     callback.allwork.push({ 
       protocol : a.user.project.protocol, 
       name : a.user.project.name, 
       json : a.user.project.json 
      }) 

       callback.save(function (err) { 
       if(!err) { 
        global.mess = "Project save succesfully" ; 
        return; 
        } 

         }); 
+0

これはバッファの外観です0a 7b 0a 20 20 20 20 22 6e 61 6d 65 22 3a 20 22 66 6c 61 72 65 22 2c 0a 20 20 20 22 63 68 69 6c 64 72 65 6e 22 3a 20 5b 7b 0a 20 20 20 20 20 20 20 ...>} – Batman

+0

私たちにいくつかのコードを教えてください。どのようにデータを保存して取得しますか? – Martin

+0

コードを表示して、JSON入力をテキストデータとして保存しますか? –

答えて

0

を保存する機能です。文字列はあなたが望むものを与えます。テキストはバイナリではありません。 Mongooseスキーマタイプの詳細は、this pageを参照してください。

テキストフィールドだけでなく、構造化オプションを使用する場合は、Schema.Types.Mixedの使用を検討してください。データベースでこれをどのように操作するのか分かりませんが、StringまたはSchema.Types.Mixedが最適かどうかはわかりません。しかし、私はStringに固執します。

+0

私はまだバイナリ形式でデータを取得しています。 Mongodbは文書をBSONに変換します。その文字列またはjsonの場合は違いはありません。 – Batman

+0

@Batmanあなたの質問に、文書が保存されているプログラムの部分を追加してください。 –

関連する問題