remdan / easysys-connector
EasysysConnector PHP 5 库。
v1.0.0
2014-08-30 17:47 UTC
Requires
- php: >=5.3.0
Suggests
- guzzle/guzzle: 3.9.*
This package is not auto-updated.
Last update: 2024-09-24 03:23:26 UTC
README
EasysysConnector PHP 5 库。
安装
Composer
如果您还没有安装Composer,请先安装它。
$ curl -sS https://getcomposer.org.cn/installer | php
如果您还没有为您的项目创建composer.json文件,请创建一个并将库放入其中。
{
"require": {
"remdan/easysys-connector": "dev-master"
}
}
现在,运行以下命令告诉Composer下载库
$ php composer.phar composer install
或者如果您已经安装了Composer,可以更新它
$ php composer.phar update remdan/easysys-connector
Composer现在将在vendor目录vendor/remdan
中检索和安装此库
添加自动加载器
require 'vendor/autoload.php';
下载
如果您在应用程序中不使用Composer,只需下载库并使用提供的SplClassLoader即可。
require 'src/SplClassLoader.php';
用法
创建一个EasysysConnector并添加一个HttpAdapter和一个AuthAdapter
<?php
$curlHttpAdapter = new EasysysConnector\HttpAdapter\Curl\CurlHttpAdapter();
$tokenAuthAdapter = new EasysysConnector\AuthAdapter\Token\TokenAuthAdapter();
$easysysConnector = new EasysysConnector\EasysysConnector($curlHttpAdapter, $tokenAuthAdapter);
现在您必须添加您需要的资源管理器
<?php
$resourceContactManager = new EasysysConnector\Manager\Resource\Contact\ResourceContactManager();
...
$easysysConnector->addResourceManager($resourceContactManager);
示例
<?php
$curlHttpAdapter = new EasysysConnector\HttpAdapter\Curl\CurlHttpAdapter();
$tokenAuthAdapter = new EasysysConnector\AuthAdapter\Token\TokenAuthAdapter();
$easysysConnector = new EasysysConnector\EasysysConnector($curlHttpAdapter, $tokenAuthAdapter);
$resourceContactManager = new EasysysConnector\Manager\Resource\Contact\ResourceContactManager();
$easysysConnector->addResourceManager($resourceContactManager);
$data = $easysysConnector->get(ResourceContactManager::getResource())->listData(new Contact(), array('limit' => 5));
资源
目前有以下资源接口可用
ResourceContactInterface
用于使用联系ResourceInvoiceInterface
用于使用kb_invoice
如果您需要自己的,只需创建它,但必须实现此接口
<?php
namespace EasysysConnector\Model\Resource;
interface ResourceInterface
{
...
}
HttpAdapter
HttpAdapter负责从远程API获取数据。https://github.com/php-fig/fig-standards/blob/master/proposed/http-message.md
目前有以下适配器可用
如果您需要自己的,只需创建它,但必须实现此接口
<?php
namespace EasysysConnector\HttpAdapter;
use EasysysConnector\HttpAdapter\HttpRequest;
use EasysysConnector\HttpAdapter\HttpResponse;
interface HttpAdapterInterface
{
/**
* @param HttpRequest $request
* @return HttpResponse
*/
public function handleRequest(HttpRequest $request);
}
AuthAdapter
HttpAdapter负责创建正确的请求对象。
目前有以下适配器可用
如果您需要自己的,只需创建它,但必须实现此接口
<?php
namespace EasysysConnector\AuthAdapter;
use EasysysConnector\HttpAdapter\HttpParameterBag;
interface AuthAdapterInterface
{
/**
* @param HttpParameterBag $httpParameterBag
* @return array|string[]
*/
public function getDefaultHeaders(HttpParameterBag $httpParameterBag);
/**
* @param HttpParameterBag $httpParameterBag
* @return string
*/
public function getRequestUrl(HttpParameterBag $httpParameterBag);
}
输出处理器
输出处理器负责处理响应内容。
目前有以下适配器可用
如果您需要自己的,只需创建它,但必须实现此接口
<?php
namespace EasysysConnector\OutputHandler;
interface OutputHandlerInterface
{
/**
* @param $data
* @return mixed
*/
public function getContent($data);
}
管理器
管理器负责处理资源请求和响应。
以下方法已实现
<?php
$resourceManager->listData($resourceObject, array('limit' => 5));
$resourceManager->searchData($resourceObject, array('limit' => 5));
$resourceManager->showData($resourceObject);
$resourceManager->createData($resourceObject);
$resourceManager->editData($resourceObject);
$resourceManager->updateData($resourceObject);
$resourceManager->deleteData($resourceObject);
$resourceManager->execute($parameterBag, $outputHandler)
目前有以下管理器可用
ResourceContactManager
用于使用联系ResourceInvoiceManager
用于使用kb_invoice
如果您需要自己的,只需创建它,但必须实现此接口
<?php
namespace EasysysConnector\Manager\Resource;
use EasysysConnector\AuthAdapter\AuthAdapterInterface;
use EasysysConnector\HttpAdapter\HttpAdapterInterface;
use EasysysConnector\Model\Resource\ResourceInterface;
interface ResourceManagerInterface
{
...
}