dompie / keila-php-api

Keila newsletter API HTTP客户端

0.10.2 2024-07-04 07:40 UTC

This package is auto-updated.

Last update: 2024-09-04 08:02:36 UTC


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