journy-io / sdk
这是 journy.io 的官方 PHP SDK
3.1.2
2022-09-02 12:51 UTC
Requires
- php: ^7.0 || ^8.0
- composer-runtime-api: ^2.1
- psr/http-client: ^1.0
- psr/http-factory: ^1.0
- psr/http-message: ^1.0
Requires (Dev)
- kriswallsmith/buzz: ^1.2
- nyholm/psr7: ^1.3
- phpunit/phpunit: >=8.0
- squizlabs/php_codesniffer: ^3.0
Suggests
- kriswallsmith/buzz: PSR-18 HTTP client
- nyholm/psr7: PSR-7 and PSR-17 implementation
README
journy.io PHP SDK
这是 journy.io 的官方 PHP SDK。
💾 安装
您可以使用 composer 安装 SDK
composer require journy-io/sdk
您还需要 PSR-7 实现(HTTP 消息)、PSR-17 实现(HTTP 工厂)和 PSR-18 实现(HTTP 客户端)。
如果您的应用还没有安装这些,我们推荐
composer require kriswallsmith/buzz nyholm/psr7
🔌 入门
配置
为了能够使用 SDK,您需要生成一个 API 密钥。如果您还没有,可以在 journy.io 中创建一个。
如果您还没有账户,您可以在 journy.io 中创建一个,或者 先请求一个演示。
转到您的设置,在 连接 选项卡下创建和编辑 API 密钥。请确保给予 API 密钥正确的权限。
use JournyIO\SDK\Client; // composer require kriswallsmith/buzz nyholm/psr7 $client = Client::withDefaults("your-api-key");
如果您想使用自己的 HTTP 客户端(PSR-18)
use Buzz\Client\Curl; use JournyIO\SDK\Client; use Nyholm\Psr7\Factory\Psr17Factory; // https://github.com/Nyholm/psr7 $factory = new Psr17Factory(); // https://github.com/kriswallsmith/Buzz $http = new Curl($factory, ["timeout" => 5]); $client = new Client($http, $factory, $factory, ["apiKey" => "your-api-key"]);
方法
获取 API 密钥详情
use JournyIO\SDK\ApiKeyDetails; $call = $client->getApiKeyDetails(); if ($call->succeeded()) { $result = $call->result(); if ($result instanceof ApiKeyDetails) { var_dump($result->getPermissions()); // string[] } } else { var_dump($call->errors()); }
处理错误
每个调用都将返回一个结果,我们不会在调用失败时抛出错误。我们不想在出现问题时破坏您的应用程序。对于空或缺失的必需参数,将抛出异常。
$call = $client->getTrackingSnippet("blog.acme.com"); var_dump($call->succeeded()); // bool var_dump($call->rateLimited()); // bool var_dump($call->remainingRequests()); // int var_dump($call->maxRequests()); // int var_dump($call->errors()); // array
📬 API 文档
💯 测试
要运行测试
composer run test
❓ 帮助
我们欢迎您的反馈、想法和建议。我们真的希望让您的生命更轻松,所以如果我们做得不够好或者应该做一些不同的事情,我们希望听到您的意见。
请创建一个问题或通过我们网站上的聊天与我们联系。
🔒 安全性
如果您发现任何与安全相关的问题,请通过电子邮件安全 at journy io 而不是使用问题跟踪器。