updevru / dkron-php-client
v1.0
2022-07-20 09:15 UTC
Requires
- php: >=7.4.0||^8.0
- ext-json: *
- ext-mbstring: *
- jms/serializer: ^3.17
- psr/http-client-implementation: ^1.0
Requires (Dev)
- nyholm/psr7: ^1.5
- php-http/curl-client: ^2.2
- php-http/mock-client: ^1.5
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-09-20 14:00:35 UTC
README
这是 PHP 的 Dkron API 客户端。这个库允许使用实际 API 版本。您可以在 文档 中找到更多信息。
目录
要求
- PHP 7.4 及以上
- PHP 的 cURL 支持
- PHP 的 JSON 支持
- 任何与 PSR-18 兼容的 HTTP 客户端(由安装说明涵盖)。
- 任何与 PSR-17 兼容的 HTTP 工厂实现(由安装说明涵盖)。
- 任何与 PSR-7 兼容的 HTTP 消息实现(由安装说明涵盖)。
安装
通过执行以下命令从 Packagist 安装库
composer require updevru/dkron-php-client
注意:API 客户端使用 php-http/curl-client 和 nyholm/psr7 作为 PSR-18、PSR-17 和 PSR-7 实现。您可以在安装期间替换这些实现,例如通过安装此库并选择您喜欢的实现,如下所示
composer require php-http/curl-client nyholm/psr7 updevru/dkron-php-client
用法
首先,您应该初始化客户端。
use Http\Client\Curl\Client; use Nyholm\Psr7\Factory\Psr17Factory; use Updevru\Dkron\ApiClient; use Updevru\Dkron\Endpoint\EndpointCollection; $client = new Updevru\Dkron\ApiClient( new Updevru\Dkron\Endpoint\EndpointCollection( [ [ 'url' => 'https://', 'login' => null, 'password' => null, ] ] ), new Http\Client\Curl\Client(), new Nyholm\Psr7\Factory\Psr17Factory(), new Nyholm\Psr7\Factory\Psr17Factory() ); $api = new \Updevru\Dkron\Api($client, new \Updevru\Dkron\Serializer\JMSSerializer());
如果启用了 HTTP 基本认证,请输入用户名和密码。
创建新作业
$newJob = new \Updevru\Dkron\Dto\JobDto(); $newJob->setName('test_job'); $newJob->setSchedule('*/2 * * * * *'); $newJob->setConcurrency(\Updevru\Dkron\Dto\JobDto::CONCURRENCY_FORBID); $newJob->setExecutor('shell'); $newJob->setExecutorConfig(['command' => 'echo Hello']); $api->jobs->createOrUpdateJob($newJob);
手动运行作业
$api->jobs->runJob('test_job');
显示执行列表
$jobs = $api->jobs->getJobs();
禁用作业
$api->jobs->toggleJob('test_job');
删除作业 test_job
$api->jobs->deleteJob('test_job');
测试
运行单元测试
composer tests
演示工作库
php bin/test.php https://:8080