TON ADNL API
Эта страница переведена сообществом на русский язык, но нуждается в улучшениях. Если вы хотите принять участие в переводе свяжитесь с @alexgton.
Существует несколько способов подключения к блокчейну:
- Поставщик данных RPC или другой API: в большинстве случаев вам нужно полагаться на его стабильность и безопасность.
- ADNL-соединение: вы подключаетесь к liteserver. Они могут быть недоступны, но при определенном уровне проверки (реализованном в библиотеке) не могут лгать.
- Двоичный файл Tonlib: вы также подключаетесь к liteserver, поэтому все преимущества и недостатки остаются, но ваше приложение также содержит библиотеку с динамической загрузкой, скомпилированную извне.
- Только для offchain. Такие SDK позволяют создавать и сериализовать ячейки, которые затем можно отправить в API.
Клиенты подключаются непосредственно к Liteserver (узлам), используя двоичный протокол.
Клиент загружает ключевые блоки, текущее состояние аккаунта и их Доказательства Меркла, что гарантирует достоверность полученных данных.
Операции чтения (например, вызов get-метода) выполняются путем запуска локального TVM с загруженным и проверенным состоянием. Важно отметить, что нет необходимости скачивать полное состояние блокчейна; клиент загружает только то, что необходимо для операции.
Вы можете подключиться к публичным Liteserver из глобальной конфигурации (основной сети или местовой сети), либо запустить свой собственный Liteserver и управлять им с помощью ADNL SDK.
Подробнее о Доказательствах Меркла читайте в Техническом документе TON 2.3.10, 2.3.11.
Публичные liteserver (из глобальной конфигурации) существуют для быстрого начала работы с TON. Они могут использоваться для обучения программированию в TON или для приложений и скриптов, которым не требуется 100% бесперебойной работы.
Для создания рабочей инфраструктуры - рекомендуется использовать хорошо подготовленную инфраструктуру:
- настроить собственный liteserver,
- использовать премиум-провайдеров Liteserver @liteserver_bot
Плюсы и минусы
-
✅ Надежность. Использует API с хэшами доказательств Меркла для проверки входящих двоичных данных.
-
✅ Безопасный. Поскольку он проверяет доказательства Меркла, вы даже можете использовать ненадежные liteserver.
-
✅ Быстрый. Подключается напрямую к узлам блокчейна TON, вместо использования промежуточного ПО HTTP.
-
❌ Сложно. Требуется больше времени, чтобы разобраться.
-
❌ Сначала бэкенд. Несовместим с веб-фронтендами (созданными для протокола, отличного от HTTP) или требует прокси-сервера HTTP-ADNL.
Справочник API
Запросы и ответы к серверу описываются схемой TL, которая позволяет вам генерировать типизированный интерфейс для определенного языка программирования.