datto/json-rpc
完全单元测试的 PHP JSON-RPC 2.0
6.1.0
2020-02-28 23:54 UTC
Requires
- php: >=7.0.0
Requires (Dev)
- phpunit/phpunit: ^6.5
README
概述
此包允许您使用自己的 PHP 代码创建和评估 JSON-RPC 消息。
此包允许您创建和评估任何 JSON-RPC 消息。它实现了 JSON-RPC 规范,但不提供传输层——如果您想通过远程发送或接收消息,您还需要它!JSON-RPC 的一个美妙特性是您可以使用 任何 传输层来传输消息:此包提供了这个选项。
如果您正在寻找一个包含传输层的端到端解决方案,那么您应该使用以下替代包之一
- 要通过 HTTP(S) 发送消息,请使用 php-json-rpc-http 包。
- 要通过 SSH 发送消息,请使用 php-json-rpc-ssh 包。
功能
- 正确:完全符合 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"
入门
-
尝试示例。您可以从项目目录运行示例,如下所示:
php examples/client.php php examples/server.php
-
查看 "examples/src" 中的代码——然后替换为自己的代码!
单元测试
您可以从项目目录运行单元测试套件,如下所示:
./vendor/bin/phpunit
变更日志
查看变更内容: 变更日志