如何将mongodb响应数组从javascript对象转换为JSON字符串

时间:2017-06-09 11:45:38

标签: javascript json mongodb bson

我编写了一个javascript API,可根据请求从mongodb数据库返回所有数据。然而,它正在向数据发送一个对象数组,我想得到简单的json字符串。返回对象的语句是

return db.collection('variants').find().toArray();

我是否需要附加另一个函数,如JSON.stringify()?但我认为这对单个对象起作用,但对于我的情况下不是对象数组。

var fetch = require('graphql-fetch');
const API_URL = `http://localhost:4000/graphql`
const query = `
{
  variants{
    VARIANT_ID
    CHROM
  }
}
`
fetch(API_URL)(query).then(data => console.log(data))

enter image description here

3 个答案:

答案 0 :(得分:4)

好的,我找到了解决方案。我只需要JSON.stringify(data)

var fetch = require('graphql-fetch');
const API_URL = `http://localhost:4000/graphql`
const query = `
{
  variants{
    VARIANT_ID
    CHROM
  }
}
`
fetch(API_URL)(query).then(data => console.log(JSON.stringify(data)))

答案 1 :(得分:0)

以下代码段可以正常使用。

fetch('/users.json')
.then(function(response) {
    return response.json()
}).then(function(json) {
    console.log('parsed json', json)
}).catch(function(ex) {
    console.log('parsing failed', ex)
})

答案 2 :(得分:-3)

您可以使用mongoexport。

要执行此操作,您需要对数据库的读访问权。

例如:mongoexport --db database [--collection traffic] --out file.json