koma136/mytarget-sdk-php
Composer 安装命令:
composer require koma136/mytarget-sdk-php
包简介
API bindings for MyTarget
README 文档
README
PHP клиент для работы с MyTarget API (v1/v2). SDK использует объекты Yii 2
Install it via composer
composer require koma136/my-target-sdk
fork dsl/my-target-sdk
Для Yii 2 в index.php пишем:
$autoloader = require(DIR . '/../../vendor/autoload.php'); \Doctrine\Common\Annotations\AnnotationRegistry::registerLoader([$autoloader, 'loadClass']);
Добавлен TopMailOperator для создания счетчиков top.mail.ru, нужно при организации ремаркетинга. Основанно на супер документации )) https://help.mail.ru/top/API/main
Пример пролучения ключа с обновлением
use Koma136\MyTarget\Token\Token;
use Koma136\MyTarget\Operator\V2\TokenOperator;
use Koma136\MyTarget\Client;
use GuzzleHttp\Client as GuzzleClient;
use GuzzleHttp\Psr7\Uri;
$array_token =
[
'access' => BJJHBKBUIHJMNGJHVBJKNJLHJKHJFDSDBFBFHMGHNCXFGHCFYJVDXFGHFG
'type' => Bearer
'refresh' => xcdfghdfghdfghdrthdjfdffkdvznsvkzsdzhuhusfryzsdygb
'expires_at' => 2018-12-07T07:28:45+0000
]
$token = Token::fromArray($array_token);
if($token->isExpiredAt(new \DateTimeImmutable('now')))
{
return $this->refreshToken($token);
}
return $token;
function refreshToken(Token $token,$username = null){
$baseUri = new Uri('https://target-sandbox.my.com/');
$http = new GuzzleHttpTransport(new GuzzleClient());
$credentials = new Credentials($this->client_id, $this->client_secret);
$httpStack = HttpMiddlewareStackPrototype::newEmpty($http);
$httpStack->push(new ResponseValidatingMiddleware());
$access_token = $token->getAccessToken();
$httpStack->push(new CallbackMiddleware(
function (RequestInterface $req, HttpMiddlewareStack $stack, $context = null) use ($access_token) {
$req = $req->withHeader('Authorization', sprintf('Bearer %s', $access_token));
return $stack->request($req, $context);
}
));
$client = new Client(new RequestFactory($baseUri), $httpStack);
$tokenOperator = new TokenOperator($client);
$tokennew = $tokenOperator->refresh($credentials,$token, new Context($username));
return $tokennew;
}
получение токена для клиента происходит так же, только вместо refresh делаем
$token = $tokenOperator->acquire($credentials, new Context($username));
где $username - имя клиента, например 123123123@agency_client
Получение списка клиентов
$operator = new ClientOperator($client, $mapper);
$operator->all();
koma136/mytarget-sdk-php 适用场景与选型建议
koma136/mytarget-sdk-php 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.25k 次下载、GitHub Stars 达 1, 最近一次更新时间为 2018 年 10 月 01 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 koma136/mytarget-sdk-php 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 koma136/mytarget-sdk-php 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 1.25k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Apache-2.0
- 更新时间: 2018-10-01