-
Notifications
You must be signed in to change notification settings - Fork 16
RU PHP API
API классы для PHP. Доступны в /api/php
Данный класс предоставляет базовый набор методов для реализации запросов к блокчейну.
Конструктор:
public function __construct([$RPCUrl = 'http://localhost:3001/', $password = ''])
Агрументы:
- $RPCUrl (string) - Адрес удаленного сервера, к которому происходит подключение в формате “http://address:port”
- $password (string) - Пароль для подключения к удаленному серверу
Returns mixed:
Проинициализированный объект с набором методов.
cURL запрос к серверу:
private static function curlRequest([$method = 'get', $url, $params = [], $password = ''])
Аргументы:
- $method (string) - Метод выполнения запроса
- $url (string) - Адрес к которому выполняется запрос
- $params (array) - Массив параметров запроса (для POST)
- $password (string) - Пароль(в случае, если подключение защищено паролем)
Returns mixed | string:
Возвращает ответ сервера на запрос
RPC запрос к серверу:
protected function request([$method, $params = [], $paramStr = ''])
Аргументы:
- $method (string) - Метод, вызываемый на сервере
- $params (array) - Массив параметров запроса (для POST)
- $paramStr (string) - Параметры, которые будут добавлены в URL запроса
Returns array | mixed | InvalidMethodException | ReturnException | RpcCallException :
Возвращает тело ответа от сервера либо исключение
Получение информации и статуса блокчейна:
public function getInfo()
Returns mixed | InvalidMethodException | ReturnException | RpcCallException :
Возвращает объект c информацией о блокчейне либо исключение
Создание и регистрация нового кошелька:
public function createWallet()
Returns mixed | InvalidMethodException | ReturnException | RpcCallException:
Возвращает информацию о новом кошельке либо исключение
Получение адреса текущего кошелька:
public function getWallet()
Returns mixed | InvalidMethodException | ReturnException | RpcCallException:
Возвращает объект с адресом текущего кошелька либо исключение
Изменение текущего кошелька на новый. Список транзакций при этом будет пересчитан, что может занять значительное время:
public function changeWalletByData($id, $private, $public)
Аргументы:
- $id (string) - Адрес нового кошелька
- $privateKey (string) - Приватный ключ для нового кошелька
- $publicKey (string) - Публичный ключ для нового кошелька
Returns array| InvalidMethodException | ReturnException | RpcCallException:
Возвращает новый кошелек либо исключение
Изменение текущего кошелька на новый. Список транзакций при этом будет пересчитан, что может занять значительное время:
public function changeWallet($wallet)
Аргументы:
- $wallet (array) - Массив, полученный из метода createWallet
Returns array| InvalidMethodException | ReturnException | RpcCallException:
Возвращает новый кошелек либо исключение
Данный класс предоставляет основной набор методов для работы с ECMA контрактами. Унаследован от NodeRPC.
Конструктор:
public function __construct([$RPCUrl = 'http://localhost:3001/', $password = ''])
Агрументы:
- $RPCUrl (string) - Адрес удаленного сервера, к которому происходит подключение в формате “http://address:port”
- $password (string) - Пароль для подключения к удаленному серверу
Returns mixed:
Проинициализированный объект с набором методов.
Получение информации о подсистеме смарт контрактов ECMA.
public function ecmaGetInfo()
Returns array | mixed:
Возвращает объект с информацией о подсистеме смарт контрактов ECMA.
Получение информации о контракте:
public function ecmaGetContractInfo($contractAddress)
Аргументы:
- $contractAddress (string) - Адрес контракта, информацию о котором хотим получить
Returns array | mixed:
Возвращает объекта с информацией о контракте.
Получение свойства контракта:
public function ecmaGetContractProperty($contractAddress, $property)
Аргументы:
- $contractAddress (string) - Адрес контракта, информацию о котором хотим получить
- $property (string) - Имя свойства
Returns array | mixed:
Возвращает объект с запрашиваемым свойствам. Тип возвращаемого значения зависит от типа свойства.
Вызов метода контракта, с последующим откатом изменений:
public function ecmaCallMethod($contractAddress, $method, $params)
Аргументы:
- $contractAddress (string) - Адрес контракта
- $method (string) - Имя вызываемого метода
- $params (array) - Параметры для метода
Returns array | mixed:
Возвращает результат вызова или ошибку.
Вызов метода контракта, с последующей записью изменений в цепочку блоков:
public function ecmaDeployMethod($contractAddress, $method, $params)
Аргументы:
- $contractAddress (string) - Адрес контракта
- $method (string) - Имя вызываемого метода
- $params (array) - Параметры для метода
Returns array | mixed:
Возвращает содержимое блока или ошибку.
Запуск нового контракта в сеть:
public function ecmaDeployContract($source [, _$resourceRent _= '0'])
Аргументы:
- $source(string) - Исходный JavaScript код смарт контракта
- $resourceRent (string | number) - Количество токенов выделяемых для аренды ресурсов
Returns array | mixed:
Возвращается объект контракта либо ошибка
Запуск нового контракта в сеть с подписанным блоком:
public function ecmaDeployContractSignedBlock($block [, _$resourceRent _= '0'])
Аргументы:
- $block (object) - JavaScript объект подписанного блока контракта
- $resourceRent (string | number) - Количество токенов выделяемых для аренды ресурсов
Returns array | mixed:
Возвращается объект контракта либо ошибка
Вызов метода контракта, с последующей записью изменений в цепочку блоков. В отличии от deployMethod принимает на вход подписанный блок EcmaContractCallBlock:
public function ecmaDeployMethodSignedBlock($contractAddress, $block)
Аргументы:
- $contractAddress (string) - Адрес контракта
- $block (object) - JavaScript объект подписанного блока контракта
Returns array | mixed:
Возвращает содержимое блока или ошибку.