Eu tenho um objeto JSON e estou convertendo-o em um Buffer
e fazendo alguns processos aqui. Posteriormente, desejo converter os mesmos dados de buffer para converter em objeto JSON válido.
Estou trabalhando no Node V6.9.1
Abaixo está o código que tentei, mas estou obtendo [object object]
quando converti de volta para JSON e não consigo abrir este objeto.
var obj = {
key:'value',
key:'value',
key:'value',
key:'value',
key:'value'
}
var buf = new Buffer.from(obj.toString());
console.log('Real Buffer ' + buf); //This prints --> Real Buffer <Buffer 5b 6f 62 6a 65 63 74>
var temp = buf.toString();
console.log('Buffer to String ' + buf); //This prints --> Buffer to String [object Object]
Então eu tentei imprimir o objeto inteiro usando a maneira de inspeção
console.log('Full temp ' + require('util').inspect(buf, { depth: null })); //This prints --> '[object object]' [not printing the obj like declared above]
Se eu tentar ler como um array
console.log(buf[0]); // This prints --> [
Eu tentei analisar também jogar SyntaxError: Unexpected token o in JSON at position 2
Eu preciso vê-lo como um objeto real, como eu criei (quero dizer, como declarado acima).
Por favor ajude..
({"id":"value"}).toString() === '[object Object]' //true
new Buffer()
está obsoleto. Veja aqui: nodejs.org/api/buffer.html#buffer_new_buffer_arrayRespostas:
Você precisa sequenciar o json, não chamar
toString
E para converter string em obj json:
fonte
new
obj