neznajki/json-rpc-client-base

Json Rpc 请求客户端基础

v0.1.2 2019-11-06 19:52 UTC

This package is auto-updated.

Last update: 2024-09-08 19:20:30 UTC


README

用于发送 json rpc 请求的客户端基础

安装

  • composer require neznajki/json-rpc-client-base
  • 扩展
class TestClient extends AbstractClient
{

    /**
     * @param string $param1
     * @param int $param2
     * @return ResponseEntity
     */
    public function ping(string $param1, int $param2): ResponseEntity
    {
        $request = $this->addPing($param1, $param2);

        return $this->handle()->getResponseById($request->getId());
    }

    /**
     * @param string $param1
     * @param int $param2
     * @return RequestEntity
     */
    protected function addPing(string $param1, int $param2): RequestEntity
    {
        return $this->addRequest(__FUNCTION__, ['param1' => $param1, 'param2' => $param2]);
    }
}
  • 定义所需项
serivces:
    TestClient:
        class: TestClient
        autowire: true
        calls:
            - method: setUser
              arguments:
                  - '@JsonRpcClientBase\ValueObject\ClientUser'
            - method: setEndpointUrl
              arguments:
                  - 'http://myCoolDev.com'

    JsonRpcClientBase\Contract\RequestHandlerInterface:
        class: JsonRpcClientBase\RequestHandler\CurlRequestHandler

    JsonRpcServerCommon\Contract\PasswordEncryptInterface:
        class: JsonRpcServerCommon\Service\DefaultPasswordEncryptService