Преобразование круговой структуры в JSON - сторонний API - PullRequest
0 голосов
/ 08 октября 2018

Я создаю проект, который выполняет вызов 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 голосов
/ 08 октября 2018

Решением может быть использование библиотеки, предназначенной для сокращения циклических ссылок.

Я случайно создал такую ​​библиотеку: https://github.com/Canop/JSON.prune

Вы можете просто вызвать ее с помощью

let json = JSON.prune(yourCircularObject);

Это добавляет "-pruned-" отметок всякий раз, когда ссылка игнорируется.

Если вы предпочитаете «тихое» удаление, вы можете сделать

let json = JSON.prune(yourCircularObject, {prunedString: undefined });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...