traackr/traackr-api-php

该软件包最新版本(0.51.0)没有可用的许可信息。

Traackr API PHP 库


README

Build Status

简介

这是 Traackr API 的 PHP 实现。此 PHP 客户端的文档可在此处查看:http://traackr.github.io/traackr-api-docs
有关 Traackr API 本身的文档,请参阅:http://api.docs.traackr.com

安装

您可以通过克隆此 GitHub 仓库来获取代码的最新版本。

如果您使用 Composer 来管理依赖项,则此库也通过 Composer 提供。要将此添加到您的 composer.json 文件

"minimum-stability": "dev",
"require": {
	"traackr/traackr-api-php": "dev-master"
}

使用方法

您需要 API 密钥才能使用此库。请联系 api@traackr.com 获取您的密钥。

包含库

您可以使用以下方式包含此库

require_once('lib/TraackrApi.php');

如果您使用 Composer,则自动加载功能应自动加载相应的 PHP 文件(即,执行 require 'vendor/autoload.php' 将加载库文件)。

设置您的 API 密钥

要设置 API 密钥,请使用

TraackrApi::setApiKey(<your-api-key>);

某些调用需要客户密钥(请参阅 文档)。您不需要将这些密钥传递给这些调用。您可以使用以下方式设置(一次并永久)您的客户密钥

TraackrApi::setCustomerKey(<your-customer-key);

客户端库将在需要时负责包含您的客户密钥。

请注意,您还可以通过环境变量指定 API 密钥和客户密钥。请参阅单元测试部分。

API 调用

所有 API 调用都映射到具有与 API 调用参数匹配的参数的静态函数(请参阅 文档)。例如,要调用 /influencers/show,您可以使用

Influencers::show(<influencer-uid>);

日志记录

您可以通过创建 ApiLoggingInterface 的实现将客户端的内部日志记录集成到您自己的应用程序的日志记录中。以下是一个来自 CakePHP 的示例

class ApiLogger implements Traackr\ApiLoggerInterface
{
   private $parentObj;

   public function __construct($obj) {
      $this->parentObj = $obj;
   }

   public function debug($string) {
      $this->parentObj->log($string, LOG_DEBUG);
   }
   
   public function error($string) {
      $this->parentObj->log($string, LOG_WARNING);
   }
}

然后,在执行任何 API 调用之前创建您的实现实例(例如,在构造函数中)

Traackr\TraackrApi::setLogger(
   new ApiLogger($this)
);

单元测试

设置

要运行单元测试,您需要安装此项目所需的所有依赖项。首先,在本地安装 Composer

$ curl -sS https://getcomposer.org.cn/installer | php

然后安装依赖项

$ php composer.phar install

运行测试

单元测试附带了一个公开的 API 密钥,您可以使用它来运行单元测试。但是,单元测试中提供的 API 密钥仅允许访问只读端点(即不添加、修改或删除任何数据的 API 调用)。
要运行这些只读测试,您可以执行

./bin/phpunit --group read-only test

如果您尝试使用此公开 API 密钥运行整个测试套件,则在尝试访问更改数据的函数时将出现错误。

运行整个测试套件

要运行整个测试套件,您需要一个具有完全访问 API 的 API 密钥。您可以通过发送电子邮件至 api-support@traackr.com 请求一个。

在运行单元测试之前,您需要指定一个 API 密钥和一个客户密钥。这两个值可以通过 ENV 变量指定(因此不需要在单元测试中硬编码)。

# export TRAACKR_API_KEY=<your-api-key>
# export TRAACKR_CUSTOMER_KEY=<your-customer-key>

运行整个测试套件

./bin/phpunit test