setono/kraken-io-php-sdk

kraken.io API 的 PHP SDK

v1.1.1 2020-11-26 11:49 UTC

This package is auto-updated.

Last update: 2024-09-15 16:02:23 UTC


README

Latest Version Latest Unstable Version Software License Build Status

这是一个用于 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);