JSON-RPC Client SDK
composer require ufo-tech/json-rpc-client-sdk
- PHP 8.3+ ·
ext-intl·ext-readline - Symfony 7.2+ · 8
- Протокол JSON-RPC 2.0 · OpenRPC
- Тип PHP-бібліотека
- Категорія SDK
- Ліцензія MIT
Бібліотека, що будує клієнтський SDK для будь-якого JSON-RPC сервера з його документації OpenRPC і виконує запити через згенеровані класи.
- Генератор читає OpenRPC і створює класи процедур (
UserSDK,AsyncUserSDK), DTO, enum і файл адресsdk_config.yaml.dist. - Базові класи
AbstractProcedure/AbstractAsyncProcedureвалідують параметри, надсилають запити, перетворюють результат на типи PHP і помилки — на винятки. - Розширена підтримка серверів на JsonRpcBundle: спеціальні параметри
$rpc(callback, timeout, rayId, ignoreCache), асинхронні виклики через черги, обмеження валідації з документації.
Встановлення
composer require ufo-tech/json-rpc-client-sdk
У Symfony-застосунку зручніше ставити SDK Bundle: він бере на себе конфігурацію, генерацію командою і автовайринг. Для асинхронних викликів через AMQP додатково:
composer require ufo-tech/component-transport-amqp
Розділи
- Генерація SDK — звідки береться документація, що генерується, фільтри методів.
- Використання — виклики, заголовки, спеціальні параметри, результати, помилки, налагодження.
- Асинхронні виклики — черги, транспорти, DSN.
- Розширення — власні читачі документації, генератори, шаблони, обробники відповідей.
- Історія змін.
- Відомі помилки.