setono / kraken-io-php-sdk
kraken.io API 的 PHP SDK
v1.1.1
2020-11-26 11:49 UTC
Requires
- php: >=7.3
- psr/http-client: ^1.0
- psr/http-factory: ^1.0
- psr/http-message: ^1.0
- thecodingmachine/safe: ^1.0
- webimpress/safe-writer: ^2.0
- webmozart/assert: ^1.7
Requires (Dev)
- ext-json: *
- kriswallsmith/buzz: ^1.1
- nyholm/psr7: ^1.3
- phpunit/phpunit: ^9.4
- setono/code-quality-pack: ^1.4
This package is auto-updated.
Last update: 2024-09-15 16:02:23 UTC
README
这是一个用于 Kraken.io API 的 PHP SDK。
安装
下载
打开命令行控制台,进入你的项目目录,然后执行以下命令以下载此库的最新稳定版本
$ composer require setono/kraken-io-php-sdk
此命令要求你全局安装了 Composer,如 Composer 文档中的 安装章节 所述。
安装 HTTP 客户端
此库对 HTTP 客户端无特定要求,因此你需要提供自己的 PSR18 HTTP 客户端实现。如果你不想麻烦,可以这样操作
$ composer require kriswallsmith/buzz nyholm/psr7
这将安装 PSR18 HTTP 客户端、Buzz 以及用于创建请求、响应和流的 HTTP 消息工厂。
用法
通过 URL 上传文件并等待响应
<?php use Setono\Kraken\Client\Client; use Setono\Kraken\Client\Response\WaitResponse; $client = new Client('Your API key', 'Your API secret'); /** @var WaitResponse $response */ $response = $client->url('https://www.your-domain.com/your/image.jpg', true); /** @var SplFileInfo $optimizedImageFile */ $optimizedImageFile = $response->getFile();
获取用户状态
<?php use Setono\Kraken\Client\Client; use Setono\Kraken\Client\Response\UserStatusResponse; $client = new Client('Your API key', 'Your API secret'); /** @var UserStatusResponse $response */ $response = $client->status(); echo sprintf('Quota total: %s', $response->getQuotaTotal()); echo sprintf('Quota used: %s', $response->getQuotaUsed()); echo sprintf('Quota remaining: %s', $response->getQuotaRemaining());
我想使用自己的 HTTP 客户端实现和消息工厂
在实例化客户端时,你可以注入自己的实现
<?php use Setono\Kraken\Client\Client; $client = new Client('Your API key', 'Your API secret', $httpClient, $httpRequestFactory, $httpStreamFactory);