Вопрос по mongodb, node.js, json – MongoDB: от BSON до JSON

6

Я использую собственный драйвер mongoDB для node.js. Я хотел бы получить некоторые данные из базы данных и отправить их в виде строки JSON через HTTP. Есть ли способ преобразовать BSON в JSON или напрямую получить данные как JSON из базы данных?

Спасибо!

Извините меня? Вы не можете работать с документами, пока драйвер не преобразует их в JSON.collection.find({}).toArray(function(err, docs) { console.log(docs); //Display array of JSON objects }) David Ellis
Я думаю, что все говорят, что драйвер MongoDB возвращает JSON, а не BSON. BSON - это просто внутренний формат, используемый для хранения ваших документов. Там не должно быть никакого преобразования требуется. Andrew T Finnell
BSON - это родной формат mongodb. JSON - это то, что вы должны получать как собственный формат объекта. jdi
Вы спрашиваете, как преобразовать объект JSON в строку? jdi
Собственный драйвер MongoDB не возвращает JSON, но объект JS (или массив, зависит от запроса). Это довольно различно, поскольку не все значения этого объекта могут быть сериализованы в JSON и десериализованы правильно (например, ObjectID, Date будет преобразован в String, и десериализатор не сможет узнать, как создать исходный объект) Louis Chatriot

Ваш Ответ

1   ответ
2

ия bson в json следующим образом:

result = db.mycol.find({ ....})
json = simplejson.dumps(result)

Он преобразует все простые объекты, но будет иметь трудности с другими, например, datetime не будет работать. Для решения этой проблемы может работать следующее:Объект MongoDB, сериализованный как JSON

Похожие вопросы