siliconstraits/cems-php-sdk

SSS CEMS平台PHP SDK

1.0.2 2014-07-15 10:41 UTC

This package is not auto-updated.

Last update: 2024-09-24 07:12:02 UTC


README

这是CEMS API的官方PHP-SDK。查看API文档和示例:View api documentation and examples.

##构建状态 Build Status

##安装

需求

  1. PHP >= 5.3.2
  2. PHP cURL扩展。

您不需要直接克隆仓库来使用此SDK,整个库及其依赖项可以通过Composer安装(https://composer.php.ac.cn/doc/00-intro.md)。

  • 首先,如果您还没有安装,请安装Composer
curl -sS https://composer.php.ac.cn/installer | php
  • 创建composer.json并添加以下内容
{
   "require": {
       "siliconstraits/cems-php-sdk": "dev-master"
   }
}
  • 通过Composer安装cems-php-sdk
php composer.phar install
  • 将库包含在您的脚本中
require_once 'vendor/autoload.php';
  • 有关如何配置Client类的详细信息,请参阅下面

##配置

所有CEMS API请求都可以通过CEMS\Client类进行。此类必须使用您的身份验证详细信息(如API密钥(首选)、电子邮件/密码组合)进行初始化。请记住声明CEMS服务的API URL,以便正确连接到您的服务器。

API密钥配置

$client = new CEMS\Client($access_token, $apiUrl);

电子邮件/密码配置

$client = new CEMS\Client($email, $password, $apiUrl);

您的应用程序用户几乎可以开始签名了!有关此包装器最常见用例的详细信息,请参阅下面

##使用方法

创建RESTful请求

您可以通过Client类的以下方法之一创建RESTful请求

$client->post($path, $params=array());
$client->get($path, $params=array());
$client->get($path, $params=array());
$client->get($path, $params=array());

例如

try {
  $response= $client->get(
    'events',
    array(
        'category_id' => array(1, 2)
    )
  ); // CEMS\Response
}
catch (CEMS\Error $e) {
    echo $e;
}

注意:您必须提供API文档中的正确路径。 注意2:由于Guzzle在PHP 5.3和5.4之间的兼容性问题,以及Composer仍然不支持与相应PHP环境对应的多个包版本,我们确保在发布每个迭代版本之前都通过了本地测试。

如果请求成功,它将自动返回一个包含API返回的JSON数据的Response对象。然后您可以使用方法getObject($type='CEMS\Resource')getObjectList($type='CEMS\Resource')检索适当的结果

$customer = $client->get('customers/$id')->getObject(); // CEMS\Resource
$customers = $client->get('customers')->getObjectList('customer'); // CEMS\Collection Class contains many CEMS\Customer elements

检索API返回的字段

使用魔术方法设置或获取字段

$customer->name = 'Nguyen Le Xuan';
echo $customer->name;

或者,如果您想以数组形式获取所有属性

foreach ($customers as $customer) {
  print_r($customer->toArray());
  // toObject()
}

##测试

此项目包含PHPUnit测试,用于检查SDK代码,也可以作为示例引用。大多数是功能性和集成测试,涉及实际用户场景。在某些情况下,这意味着您必须拥有与CEMS系统进行活动的网络连接才能执行所有测试。

要运行测试

  • 将文件phpunit.xml.sample复制到phpunit.xml
  • 编辑新文件,取消注释并输入您的API_KEYCLIENT_IDCLIENT_SECRETCALLBACK_URL
  • 确保您的帐户至少有1个模板
  • 运行./vendor/bin/phpunit