Перейти к основному содержимому

TON ADNL API

warning

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

Существует несколько способов подключения к блокчейну:

  1. Поставщик данных RPC или другой API: в большинстве случаев вам нужно полагаться на его стабильность и безопасность.
  2. ADNL-соединение: вы подключаетесь к liteserver. Они могут быть недоступны, но при определенном уровне проверки (реализованном в библиотеке) не могут лгать.
  3. Двоичный файл Tonlib: вы также подключаетесь к liteserver, поэтому все преимущества и недостатки остаются, но ваше приложение также содержит библиотеку с динамической загрузкой, скомпилированную извне.
  4. Только для offchain. Такие SDK позволяют создавать и сериализовать ячейки, которые затем можно отправить в API.

Клиенты подключаются непосредственно к Liteserver (узлам), используя двоичный протокол.

Клиент загружает ключевые блоки, текущее состояние аккаунта и их Доказательства Меркла, что гарантирует достоверность полученных данных.

Операции чтения (например, вызов get-метода) выполняются путем запуска локального TVM с загруженным и проверенным состоянием. Важно отметить, что нет необходимости скачивать полное состояние блокчейна; клиент загружает только то, что необходимо для операции.

Вы можете подключиться к публичным Liteserver из глобальной конфигурации (основной сети или местовой сети), либо запустить свой собственный Liteserver и управлять им с помощью ADNL SDK.

Подробнее о Доказательствах Меркла читайте в Техническом документе TON 2.3.10, 2.3.11.

Публичные liteserver (из глобальной конфигурации) существуют для быстрого начала работы с TON. Они могут использоваться для обучения программированию в TON или для приложений и скриптов, которым не требуется 100% бесперебойной работы.

Для создания рабочей инфраструктуры - рекомендуется использовать хорошо подготовленную инфраструктуру:

Плюсы и минусы

  • ✅ Надежность. Использует API с хэшами доказательств Меркла для проверки входящих двоичных данных.

  • ✅ Безопасный. Поскольку он проверяет доказательства Меркла, вы даже можете использовать ненадежные liteserver.

  • ✅ Быстрый. Подключается напрямую к узлам блокчейна TON, вместо использования промежуточного ПО HTTP.

  • ❌ Сложно. Требуется больше времени, чтобы разобраться.

  • ❌ Сначала бэкенд. Несовместим с веб-фронтендами (созданными для протокола, отличного от HTTP) или требует прокси-сервера HTTP-ADNL.

Справочник API

Запросы и ответы к серверу описываются схемой TL, которая позволяет вам генерировать типизированный интерфейс для определенного языка программирования.

Схема TonLib TL