API Розетты
https://github.com/edgeware-network/substrate-rosetta-api
Введение
Rosetta API — это инструмент разработки, созданный Coinbase, который позволяет блокчейнам быть более совместимыми с различными третьими стороннее программное обеспечение, включая биржи (например, Coinbase), кошельки, внебиржевые столы и приложения.
В сочетании с Substrate,, который является гибким, [открытым,](https://substrate.io /technology/open/) совместимая, и защищенная от будущего фреймворк для разработки блокчейнов , у нас есть два ведущих в отрасли способа разработки и взаимодействия с платформами на основе блокчейна. Преимущества этой комбинации позволяют любой цепочке Substrate тривиально реализовать совместимые инструменты, такие как этот репозиторий Rosetta API.
Предпосылки
Доступ к узлу архива
Вам потребуется доступ к архивному узлу чтобы иметь возможность запрашивать всю цепочку блоков. Вы можете использовать общедоступные узлы или запускать их локально, используя флаг --pruning archive
при запуске узла. Вы также можете использовать флаг --wasm-execution Compiled
, чтобы значительно ускорить время синхронизации, однако это использует больше ЦП и ОЗУ, поэтому вы должны отключить его после завершения синхронизации.
Настройка Rosetta-api
git clone https://github.com/edgeware-network/substrate-rosetta-api
- Отредактируйте файлы конфигурации в соответствии с вашей цепочкой. Они находятся в папке
networks
. Информацию можно найти в самом узле и в subscan или в предпочитаемом обозревателе блоков. Вы также можете использовать приложения Polkadot. - Добавьте метаданные вашей цепочки в шестнадцатеричном формате в
networks/metadata
. Вы можете получить это с помощью инструмента subxt CLI, по умолчанию он работает на локальном узле, или вы можете использовать другой узел, указав --url.-
- Вы можете получить метаданные, выполнив команду
subxt metadata --format hex
- Вы можете получить метаданные, выполнив команду
-
- Добавьте свои типы цепочек. Это можно сделать одним из двух способов:
-
- Добавьте типы вручную в файл
polkadot-types.json
.- Если ваша цепочка использует пакет узла, такой как Edgeware, вы добавляете спецификацию цепочки в
src/helpers/connections.js
с типами вclass SubstrateNetworkConnection
- Если ваша цепочка использует пакет узла, такой как Edgeware, вы добавляете спецификацию цепочки в
- Добавьте типы вручную в файл
-
- После завершения запустите yarn install и yarn start.
Настройка Rosetta-cli
-
В отдельном тесте терминала с rosetta-cli. После загрузки вам, скорее всего, придется установить свой путь для rosetta-cli с помощью этой команды `export PATH= Например, $PATH:/Users/bin.
-
После установки
Используйте "rosetta-cli [команда] --help" для получения дополнительной информации о команде.
Это список примеров команд rosetta-cli. Обратите внимание, что вы должны указывать, какой файл конфигурации вы хотите нам каждый раз. -
rosetta-cli view:balance '{"address":"ADDRESS-GOES-HERE"}' BLOCK-NUMBER-GOES-HERE --configuration-file ./rosetta-api/rosetta-cli/mainnet/config. json
-
rosetta-cli view:block BLOCK-NUMBER-GOES-HERE --configuration-file ./Depth-rosetta-api/rosetta-cli/mainnet/config.json
-
rosetta-cli view:networks --configuration-file ./rosetta-api/rosetta-cli/mainnet/config.json
-
rosetta-cli check:data --configuration-file ./rosetta-api/rosetta-cli/mainnet/config.json
Попробуйте все возможные тесты с rosetta-cli.
- Теперь у вас есть рабочий экземпляр rosetta-api для вашей цепочки субстратов. Пожалуйста, не стесняйтесь, дайте нам знать, как мы можем улучшить его в будущем. Наш API — это ваш API.
Связаться с нами:
Discord: https://discord.gg/wFbystdrHC
Telegram: https://t.me/heyedgeware