Подграфы
Мы поддерживаем разработку эффективных и отзывчивых приложений, предоставляя доступ к данным блокчейна в реальном времени и с высокой точностью через использование индексного протокола The Graph. Подграфы — это мощный инструмент, который позволяет нам индексировать данные, хранящиеся в Ethereum, и запрашивать эти данные с помощью GraphQL.
Вот как вы можете использовать пользовательские подграфы для запроса связанных данных в протоколе.
Доступ к нашему подграфу
Мы создали специальные подграфы для данных протокола. Эти подграфы содержат различные сущности, индексированные из блокчейна, такие как транзакции, аккаунты и конкретные события, связанные с нашими DeFi продуктами. Вы можете запрашивать данные в подграфе, следуя следующим шагам:
Шаг 1: Найдите конечную точку
Найдите URL конечной точки GraphQL, соответствующий подграфу, с которым вы хотите взаимодействовать. Обычно это выглядит как веб-адрес. Пожалуйста, убедитесь, что вы используете самую актуальную конечную точку.
Шаг 2: Поймите схему
Схема описывает сущности в подграфе и типы запросов, которые можно выполнять. Понимание схемы имеет решающее значение для написания эффективных запросов.
Шаг 3: Напишите запрос GraphQL
Основываясь на схеме, вы можете начать писать запросы GraphQL для получения данных из подграфа. GraphQL позволяет делать очень специфические запросы, запрашивая только те поля, которые вас интересуют. Например, если вы хотите запросить подробную информацию о каждой транзакции, вы можете написать запрос, подобный этому:
{
transactions(first: 5) {
vault
tradingFeeRate
totalCollateral
timestamp
term
spreadAPR
referral
minter
makerCollateral
maker
id
hash
expiry
collateralAtRiskPercentage
borrowAPR
anchorPrices
}
}
Это вернет транзакции и их связанные детали для первых пяти записей в блокчейне.
Шаг 4: Отправьте запрос
Отправьте ваш запрос, используя любой HTTP-клиент, который поддерживает GraphQL. Вы можете использовать командную строку, такую как curl, или библиотеку, интегрированную в ваше приложение, например, apollo-client. Обычно запрос отправляется как POST-запрос на URL конечной точки.
Пример кода с использованием curl выглядит следующим образом:
curl -X POST -H "Content-Type: application/json" --data '{"query": "{ transactions(first: 5) { id vault totalCollateral minter timestamp } }"}' https://api.studio.thegraph.com/query/77961/sofa-mainnet/version/latest
Замените URL в зависимости от фактической ситуации.
Шаг 5: Анализируйте и используйте ответ
После отправки вашего запроса, служба GraphQL вернет ответ в формате JSON. Вы можете обработать эти данные в вашем приложении или напрямую отобразить их пользователям на фронтенде.
Лучшие практики
- Используйте переменные запроса: Если вам часто нужно выполнять запросы одной и той же структуры, но с разными параметрами, использование переменных запроса может упростить повторное использование ваших запросов.
- Обрабатывайте ошибки: В дополнение к обычным ответам, GraphQL также может возвращать информацию об ошибках. Убедитесь, что ваш клиентский код может корректно обрабатывать эти ситуации.
Следуя вышеуказанным шагам, вы сможете эффективно использовать The Graph для запроса данных о протоколе SOFA для поддержки ваших проектов разработки. Пожалуйста, обратитесь к остальной части нашей документации для разработчиков и связанных ресурсов Subgraph для получения дополнительной информации.