dompie / keila-php-api
Keila newsletter API HTTP客户端
0.10.2
2024-07-04 07:40 UTC
Requires
- php: ^8.1
- guzzlehttp/guzzle: 7.*
Requires (Dev)
- phpunit/phpunit: ^10.5
README
一个使用Guzzle作为唯一依赖的PHP HTTP客户端,用于Keila newsletter API。
安装
composer require dompie/keila-http-api
如何使用
require_once 'vendor/autoload.php'; $httpClient = new \GuzzleHttp\Client(); $client = new \Dompie\KeilaApiClient\ApiClientV1($httpClientInterface, 'https://keila-installation.url', 'my-secret-keila-api-key'); $responseInterface = $client->createContact([ 'first_name' => 'First', 'last_name' => 'Last', 'email' => 'first.last@example.com', ]); $campaign = new \Dompie\KeilaApiClient\Campaign(); $campaign->withName('My test campaign') ->withTextEditor('Hello world!') ->withMarkdownEditor(); $responseInterface = $client->createCampaign($campaign);
然后你可以将Guzzle ResponseInterface传递到你的上下文中。
响应助手
出于测试目的,我还添加了一个KeilaResponse类,以便快速访问相关项目。
$response = \Dompie\KeilaApiClient\KeilaResponse::new($responseInterface); $response->hasData(); $response->getDataItem(0); //First element from the data property $response->getGuzzleResponse()->getStatusCode()
⚠️ 测试将触发电子邮件发送。仅在keila开发实例中使用。
cp phpunit.xml.dist phpunit.xml
将您的Keila URI和Keila API密钥放入phpunit.xml
<env name="KEILA_BASE_URI" value="http://keila.local:4000" force="true"/> <env name="KEILA_API_KEY" value="secret-api-key" force="true"/>
最后进行测试
make test
or
XDEBUG_MODE=coverage make test-coverage