Запросить Uniswap с помощью GraphQL для получения цены ETH

Я новичок в Uniswap и GraphQL... Я пытаюсь получить цену ETH с помощью node.js и получаю следующий вызов. К сожалению, тело ответа по какой-то причине undefined. Не могли бы вы сообщить мне, что я могу здесь делать не так?

const uniSwapResponse = await fetch("https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v2", {
    method: "POST",
    headers: {
        "Content-Type": "application/json",
        Accept: "application/json",
    },
    body: JSON.stringify({ query: '{ bundle(id: "1" ) {ethPrice} }' })
});

console.info(uniSwapResponse.data);

Обновлено:

Ниже мне помогло:

fetch("https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v2", {
    method: "POST",
    headers: {
        "Content-Type": "application/json",
        Accept: "application/json",
    },
    body: JSON.stringify({ query: '{ bundle(id: "1") {ethPrice} }' })
}).then(r => r.json())
  .then(data => console.info("ETH price:", data.data.bundle.ethPrice))

Спасибо,

Дуг

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
0
108
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать await только в функции async.
Самый простой подход:

fetch("https://api.thegraph.com/subgraphs/name/uniswap/uniswap-v2", {
    method: "POST",
    headers: {
        "Content-Type": "application/json",
        Accept: "application/json",
    },
    body: JSON.stringify({ query: 'ethPrice { bundle(id: "1") {  ethPrice } }' })
})
.then((response) => { console.info(response) });

Также проверьте этот пост.

Большое спасибо за ваш ответ, Джерри. Я завернул его в асинхронную функцию. Проблема больше в том, как я каким-то образом делаю запрос. Если вы запустите свой код в проекте узла, вы также должны получить неопределенный ответ. Не могли бы вы сообщить мне, если заметите другой ответ с вашей стороны?

Doug 16.03.2024 16:21

Ну, я использую jsFiddle, и он дает мне полный объект ответа, с arrayBuffer, blob, телом и т. д.

Jerry 16.03.2024 16:26

Большое спасибо, Джерри, я отредактировал свой вопрос, но спасибо, что направил меня на правильный путь...

Doug 16.03.2024 16:43

Другие вопросы по теме

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

RTK-запрос: следует ли использовать один и тот же запрос для разных конечных точек, если все они имеют одинаковую структуру данных?
Использование предварительного кэширования рабочего поля для нескольких страниц/маршрута генерирует кеш, но не может найти совпадение
Снова показать варианты ответа, оставив выбор в Qualtrics, используя Javascript
Solr DataImportHandler с использованием ScriptTransformer: функциональность JavaScript сильно ограничена
Каков правильный тип ввода поля для ввода CSS или JavaScript, чтобы избежать нежелательных символов?
Как создать пользовательский компонент выбора с параметрами, передаваемыми в виде HTML вместо реквизита в Vue 3?
Как получить таблицу с сайта github.com с помощью скрипта приложения Google Cheerio
Css – как выровнять элемент гибкого центра?
Как сохранить данные HTML для файла://
Как нарисовать ограничивающую рамку на изображении, возвращенном с сервера?