Преобразование круговой структуры в JSON - сторонний API

1

Я создаю проект, который вызывает вызов 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);
  })
};

Любые идеи для обходного пути или исправления? Я бы хотел отправить эти данные в свой интерфейс, но этого не происходит.

  • 0
    Как именно вы получаете циклические данные? Это не может быть просто путем анализа JSON.
Теги:
axios

1 ответ

0
Лучший ответ

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

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

Вы можете просто называть это

let json = JSON.prune(yourCircularObject);

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

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

let json = JSON.prune(yourCircularObject, {prunedString: undefined });
  • 0
    Спасибо, я попробую использовать это и дам вам знать, как это происходит.
  • 0
    Кажется, сейчас работает, спасибо. Я пробовал другие библиотеки, прежде чем опубликовать этот вопрос, или они больше не работают, или я их неправильно настроил.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню