Golos Blockchain
  • База знаний Golos
  • ПОЛЬЗОВАТЕЛЯМ
    • Способы регистрации
    • Старт на Golos Блоги
      • Кошелёк
    • Вопросы и ответы
    • Полезные статьи
    • Обновления на Голосе
  • Разработчикам
    • Основы
      • Операции и их типы
      • Объекты и структуры
      • Состояние (стэйт) системы
      • Плагины и их API
      • Библиотеки для работы
      • Примеры кода
      • Формирование транзакций
      • Пропускная способность
      • Тестнет (ноды для тестов)
    • API-документация
      • API part 1
      • API part 2
      • API part 3
      • API part 4
      • Cli-wallet API
    • Обновления (HardForks)
      • HF18: Данные по установке
      • HF18: Новые возможности
      • HF18: Изменения в API
      • HF18: Изменения в cli_wallet
      • SF18.4: Новые функции
      • HF19: Новые возможности
      • HF20: Устранение бага
      • HF22: Новые возможности
      • HF23: Новые возможности
      • HF24: Новые возможности
      • HF25: Новые возможности
      • HF26: Новые возможности
      • HF27: Новые возможности
      • HF28: Новые возможности
    • Руководства (HowTo)
      • Скрипт регистрации аккаунтов
      • Операции на бирже
      • Как использовать мультиподписи
      • Как объединять операции в одну транзакцию
      • Пример запуска тестнета
  • Делегатам
    • Делегатство и роли нод
    • Установка ноды
      • Гайд для witness/seed ноды
      • Настройка для API-ноды
      • Настройка ноды для бирж
      • Настройка ElasticSearch
      • Нода с отладкой GDB
    • Медианные параметры
    • Скрипты для price feed
Powered by GitBook
On this page
  • JavaScript
  • Python
  • PHP
  • GO
  • Другое
  1. Разработчикам
  2. Основы

Библиотеки для работы

PreviousПлагины и их APINextПримеры кода

Last updated 2 years ago

Наличие библиотеки для конкретного языка программирования зависит от наличия заготовок для работы с криптографией, большими числами и транспортными протоколами (http/ws). Так как GOLOS исторически эволюционировал из Graphene, многие библиотеки для кодовой базы Steem нередко подходят для Golos. Отличительной особенностью является формат общения с нодой (структура json-rpc), порядок и наименование параметров при описании операции, формат сложных данных в бинарном виде.

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

Ниже перечислены основные библиотеки, которые поддерживают большинство API запросов к ноде и формирование транзакций.

JavaScript

Фаворит для разработки приложений библиотека . В нем есть поддержка всего что нужно как для серверного (nodejs), так и для пользовательского (js в браузерах) взаимодействия с Golos:

  • Создание и кодирование ключей;

  • API-запросы;

  • Формирование транзакций;

  • Упрощенный конструктор транзакций для операций;

  • Функции обратного вызова для запросов;

golos-lib-js доступна на GitHub. Также примеры для часто используемых операций смотрите в .

Python

Библиотека , наиболее актуальная на текущий момент и поддерживает последние изменения в блокчейне (26 ХФ). За её основу была взята от (актуальна до 23 ХФ).

от / поддерживает как API запросы, так и формирование транзакций. к ней на английском языке.

PHP

GO

Другое

Если вы не нашли требуемый язык программирования, то можно обратить внимание на существующие библиотеки для Steem и EOS. Чтобы модифицировать их и получить поддержку Golos достаточно проверить формат json-rpc запросов, поменять chain_id (в GOLOS он равен 782a3039b478c839e4cb0c941ff4eaeb7df40bdd68bd441afd444b9da763de12 — это префикс для подписи сырых транзакций) и настроить конструктор операций.

Сложность разработки поддержки на PHP в том, что нет стандартных библиотек для работы с криптографией. Поэтому необходим полный доступ к серверу, чтобы собрать secp256k1 для PHP и включить поддержку . Это накладывает определенные ограничения на разработчиков (требует опыт в администрировании).

Несмотря на это, существует с поддержкой GOLOS от , установка возможна через Docker.

от также подходит для API запросов и изучения формирования транзакций.

— быстрая и простая библиотека на C# использующая .NET стандарта 2.0;

— библиотека на Elixir для API-запросов;

— библиотека на Swift.

публичные ноды
golos-lib-js
Документация
разделе Примеры кода
https://github.com/golos-blockchain/lib-python
https://pypi.org/project/golos-lib-python/
golos-python
@vvk
Библиотека golos-python
@someguy
@ksantoprotein
Документация
GMP
библиотека php-graphene-node-client
@t3ran13
Библиотека golos-lib-go
@asuleymanov
C# Ditch
Elixir API wrapper
Swift Steem