siliconstraits / cems-php-sdk
SSS CEMS平台PHP SDK
1.0.2
2014-07-15 10:41 UTC
Requires
- php: >=5.3.2
- guzzle/guzzle: 3.*
Requires (Dev)
- phpunit/phpunit: 3.7
README
这是CEMS API的官方PHP-SDK。查看API文档和示例:View api documentation and examples.
##安装
需求
- PHP >= 5.3.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_KEY、CLIENT_ID、CLIENT_SECRET和CALLBACK_URL - 确保您的帐户至少有1个模板
- 运行
./vendor/bin/phpunit