resnext/spotoption-api-client

SpotOption平台PHP客户端

v0.1.1 2017-03-05 19:25 UTC

This package is not auto-updated.

Last update: 2024-09-14 20:04:08 UTC


README

SpotOption平台二进制选项的API客户端。

安装

使用Composer安装,无疑。

$ composer require resnext/spotoption-api-client

通用API客户端使用。

$apiClient = new SpotOption\ApiClient(<URL>, <USERNAME>, <PASSWORD>);

错误处理

\SpotOption\ApiClient的每个方法都可以返回响应对象(\SpotOption\Response的实例)或抛出两种类型的异常。

  1. \SpotOption\ServerException 服务器端异常,当请求到无效数据或无法执行的操作时被分配。
  2. \SpotOption\ClientException 客户端异常意味着API客户端无法连接到SpotOption服务器或由于任何原因接收无效的响应。

配置和定制

您可以使用ApiClient构造函数的$options参数配置使用的HTTP客户端。

示例

$httpClient = new GuzzleHttp\Client([
   GuzzleHttp\RequestOptions::CONNECT_TIMEOUT => 2,
]);

$apiClient = new \SpotOption\ApiClient(<API_URL>, <API_USERNAME>, <API_PASSWORD>, [
    'httpClient' => $httpClient,
]);

国家检索

/** @var \SpotOption\Responses\GetCountriesResponse $response */
$response = $this->apiClient->getCountries();
/** @var \SpotOption\Entities\Country[] $countries */
$countries = $response->getData();

活动检索

此示例检索所有类型为CPA的活动。

/** @var \SpotOption\Responses\GetCampaigns $response */
$response = $this->apiClient->getCampaigns(\SpotOption\Entities\Campaign::TYPE_CPA);
/** @var \SpotOption\Entities\Campaign[] $countries */
$countries = $response->getData();

客户验证

/** @var \SpotOption\Responses\ValidateCustomerResponse
$response = $apiClient->validateCustomer('email@domain.com', 'password');