将循环结构转换为JSON-第三方API

时间:2018-10-08 15:23:07

标签: javascript json node.js axios

我正在构建一个项目,该项目正在调用区块链API。不幸的是,我返回的数据是循环的,因此在Postman中工作时,尝试将其转换为JSON时服务器出错。我尝试使用JSON.stringify,但没有任何改变。

这是控制器功能:

blockchainController.search = (req, res) => {
  axios({
    method: 'GET',
    url: `https://chain.api.btc.com/v3/address/${req.body.address}/tx`
  })
  .then(data => {
    res.json({
      message: 'Transactions loaded',
      data: data
    })
  })
  .catch(err => {
    console.log(err);
    res.send(err);
  })
};

有任何解决方法或解决方案吗?我希望能够将这些数据发送到我的前端,但是不会发生。

1 个答案:

答案 0 :(得分:0)

一种解决方案可能是使用旨在修剪循环引用的库。

我恰好建立了这样的库:https://github.com/Canop/JSON.prune

您可以简单地用

进行调用
let json = JSON.prune(yourCircularObject);

每当忽略引用时,都会添加一些"-pruned-"标记。

如果您希望“无声”删除,可以这样做

let json = JSON.prune(yourCircularObject, {prunedString: undefined });