api-clients / travis
异步优先 TravisCI PHP API 客户端
1.0.1
2017-11-05 18:36 UTC
Requires
- php: ^7.0
- api-clients/client-services: ^1.3
- api-clients/foundation: ^1.0
- api-clients/middleware-json: ^3.0
- api-clients/middleware-token-authorization: ^3.0
- api-clients/middleware-user-agent: ^2.0
- api-clients/pusher: ^1.0
- api-clients/rx: ^2.2
- api-clients/rx-operators: ^2.0
- api-clients/transport: ^3.0
Requires (Dev)
Suggests
- api-clients/middleware-delay: Add a delay between requests to not hammer Travis
- api-clients/middleware-pool: Keep your request count under control
This package is auto-updated.
Last update: 2024-09-15 19:32:33 UTC
README
安装
通过 Composer 安装,使用以下命令,它将自动检测最新版本并将其绑定到 ^
。
composer require api-clients/travis
使用方法
客户端需要两样东西,ReactPHP 事件循环,以及可选的认证令牌。一旦创建客户端,您可以调用 user
方法来显示当前认证的用户。
use React\EventLoop\Factory; use ApiClients\Client\Travis\AsyncClient; use ApiClients\Client\Travis\Resource\UserInterface; use function ApiClients\Foundation\resource_pretty_print; $loop = Factory::create(); $client = AsyncClient::create( $loop, 'your travis key from https://blog.travis-ci.com/2013-01-28-token-token-token/' ); $client->user()->then(function (UserInterface $user) { resource_pretty_print($user); }); $loop->run();
结果流
上面的例子使用了承诺,当有多个结果时,会返回一个可观察对象。这里使用 RxPHP
进行可观察对象。这意味着您可以对结果流应用大量方法。
use React\EventLoop\Factory; use ApiClients\Client\Travis\AsyncClient; use ApiClients\Client\Travis\Resource\BroadcastInterface; use function ApiClients\Foundation\resource_pretty_print; $loop = Factory::create(); $client = AsyncClient::create($loop, 'your key'); $client->broadcasts()->subscribe(function (BroadcastInterface $broadcast) { resource_pretty_print($broadcast); }); $loop->run();
同步使用
同步客户端的工作方式几乎与异步相同,实际上它包装了异步客户端来完成所有工作。此示例与异步使用示例执行相同。
use ApiClients\Client\Travis\Client; use function ApiClients\Foundation\resource_pretty_print; $client = Client::create('your travis key'); resource_pretty_print($client->user());
同步结果流
同步结果流以数组形式返回。
use ApiClients\Client\Travis\Client; use function ApiClients\Foundation\resource_pretty_print; $client = Client::create('your travis key'); foreach ($client->broadcasts() as $broadcast) { resource_pretty_print($broadcast); };
示例
examples
目录包含此包的所有示例。
许可证
MIT 许可证 (MIT)
版权所有 (c) 2017 Cees-Jan Kiewiet
特此授予任何获得此软件及其相关文档副本(以下简称“软件”)的人士免费使用权,不受限制地处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许软件的接收者进行上述操作,前提是满足以下条件
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
本软件按“现状”提供,不提供任何形式的保证,无论是明示的还是暗示的,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者不应对任何索赔、损害或其他责任负责,无论是基于合同、侵权或其他原因,无论是否因使用本软件或其使用或其他方式引起的。