JavaScript SDK¶
Пакет JavaScript SDK предназначен для разработчиков приложений, интегрируемых с платформой Waves Enterprise. С помощью JavaScript SDK пользователи разработанных приложений подписывают и отправляют все типы транзакций в блокчейн-сеть.
JavaScript SDK использует методы REST API для работы с блокчейном. В отличии от прямого взаимодействия с блокчейном через традиционный инструмент REST API приложение подписывает транзакцию локально в браузере или в среде Node.js, не обращаясь к ноде. Подписанная транзакция отправляется сразу в сеть. Такой способ работы с блокчейном более удобен и эффективен для разработки сторонних сервисов и приложений, взаимодействующих с блокчейн-сетью. Данные передаются и принимаются в формате json по HTTPS-протоколу.
JavaScript SDK работает одновременно и в браузере, и в среде Node.js. Веб-приложения используют вариант работы в браузере, бэкенд-приложения - работу в среде Node.js. Если вы хотите работать без браузера, то для использования JavaScript SDK потребуется установка LTS версии Node.js. Сам пакет JavaScript SDK и инструкцию по установке и инициализации вы найдёте на странице в GitHub. Общая схема работы JavaScript SDK представлена ниже.

Состав JavaScript SDK¶
В дополнение к самим исходникам JavaScript SDK включает в себя два вспомогательных компонента:
transactions-factory - компонент предназначен для корректной сериализации в байты всех типов транзакций для последующей подписи приватным ключом.
signature-generator - компонент, подписывающий транзакции и поддерживающий ГОСТ и Waves криптографию.
Авторизация в блокчейне через JavaScript SDK¶
Пользователь приложения использует стандартные средства авторизации в блокчейне Waves Enterprise. Подробнее о методах авторизации вы можете почитать в разделе Методы авторизации.
JavaScript SDK поддерживает авторизацию в браузере и в среде Node.js. Для авторизации в браузере используется интерфейс Fetch API. Для Node.js применяется HTTP-клиент Axios.
Подписание и отправка транзакций в блокчейн¶
Приложение может создавать, подписывать и отправлять в блокчейн любой транзакции. Список всех транзакций вы можете посмотреть в разделе Транзакции.
Создание транзакции инициируется приложением.
Все поля транзакции сериализуются в байты и подписываются приватным ключом пользователя прямо в браузере или в среде Node.js.
JavaScript SDK отправляет транзакцию в блокчейн, используя соответствующий HTTP POST запрос.
Приложение получает ответ в виде хэша транзакции на выполненный HTTP POST запрос.
Создание seed-фразы¶
Приложение работает с seed-фразой в следующих вариантах:
Создаёт фразу в совершенно случайном порядке.
Создаёт зашифрованную фразу с указанным паролем.
Расшифровывает фразу при помощи указанного пароля.