datto/json-rpc

完全单元测试的 PHP JSON-RPC 2.0

6.1.0 2020-02-28 23:54 UTC

This package is auto-updated.

Last update: 2024-08-29 03:42:01 UTC


README

概述

此包允许您使用自己的 PHP 代码创建和评估 JSON-RPC 消息。

此包允许您创建和评估任何 JSON-RPC 消息。它实现了 JSON-RPC 规范,但不提供传输层——如果您想通过远程发送或接收消息,您还需要它!JSON-RPC 的一个美妙特性是您可以使用 任何 传输层来传输消息:此包提供了这个选项。

如果您正在寻找一个包含传输层的端到端解决方案,那么您应该使用以下替代包之一

功能

  • 正确:完全符合 JSON-RPC 2.0 规范(100% 单元测试覆盖率)
  • 灵活:您可以使用自己的代码评估 JSON-RPC 方法字符串
  • 极简:非常轻量级
  • 即用型,附带工作示例

示例

客户端

$client = new Client();

$client->query(1, 'add', array(1, 2));

$message = $client->encode();

// message: {"jsonrpc":"2.0","method":"add","params":[1,2],"id":1}

服务器

$api = new Api();

$server = new Server($api);

$reply = $server->reply($message);

// reply: {"jsonrpc":"2.0","result":3,"id":1}

请参阅 示例 文件夹中的完整工作示例。

要求

  • PHP >= 7.0

许可

此包在开源许可下发布: LGPL-3.0

安装

如果您正在使用 Composer,您可以通过以下方式包含此库(datto/json-rpc):

composer require "datto/json-rpc"

入门

  1. 尝试示例。您可以从项目目录运行示例,如下所示:

    php examples/client.php
    php examples/server.php
    
  2. 查看 "examples/src" 中的代码——然后替换为自己的代码!

单元测试

您可以从项目目录运行单元测试套件,如下所示:

./vendor/bin/phpunit

变更日志

查看变更内容: 变更日志

作者

Spencer Mortensen