This Package helps developers to easily connect to RPC servers.
You can install the package via composer:
composer require jalallinux/php-json-rpc-client
Supported options: https://docs.guzzlephp.org/en/stable/request-options.html#auth
$rpc = new RpcClient('http://localhost:8000/rpc/server', '2.0');
{
"http_errors": false,
"headers": {
"Content-Type": "application/json",
"Accept": "application/json"
}
}
$rpc->setOption('connect_timeout', 3.14);
$rpc->withHeaders(['api-key' => 'php-json-rpc-client-api-key']);
$rpc->withBasicAuth(['username', 'password']);
$rpc->withJwtAuth('Bearer php-json-rpc-client-jwt-token');
$rpc->request('user.get', ['username' => 'jalallinux']);
$rpc->request('user.get', ['username' => 'jalallinux'], '1');
Description: https://www.jsonrpc.org/specification#notification
$rpc->notify('user.get', ['username' => 'jalallinux']);
$rpc->send();
$rpc = new RpcClient('http://localhost:8000/rpc/server', '2.0');
$response = $rpc->setOption('connect_timeout', 3.14);
->withHeaders(['api-key' => 'php-json-rpc-client-api-key']);
->withBasicAuth(['username', 'password']);
->withJwtAuth('Bearer php-json-rpc-client-jwt-token');
->request('user.get', ['username' => 'jalallinux']);
->request('user.get', ['username' => 'jalallinux'], '1');
->notify('user.get', ['username' => 'jalallinux']);
->send();
$response->body(): string
$response->array(): array
$response->object(): object
$response->status(): int
$response->successful(): bool
$response->ok(): bool
$response->failed(): bool
$response->clientError(): bool
$response->serverError(): bool
$response->header(string $header): string
$response->headers(): array
composer test
Please see CHANGELOG for more information on what has changed recently.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.