d8-contrib-modules / cloudflarephpsdk
用于与 CloudFlare SDK 交互的 PHP 客户端。CloudFlare 是 CloudFlare, Inc. 的版权。此工具的作者与 CloudFlare, Inc. 无关。
Requires
- php: >=5.5.9
- guzzlehttp/guzzle: ~6.1|^7.0
Requires (Dev)
- drupal/coder: 8.2.*
- pdepend/pdepend: 1.1.*
- phing/phing: 2.11.*
- phploc/phploc: 2.0.*@dev
- phpmd/phpmd: 1.*
- phpunit/phpunit: ~4.8
- sebastian/phpcpd: 2.0.*@dev
- squizlabs/php_codesniffer: 2.*
This package is not auto-updated.
Last update: 2024-09-14 17:37:34 UTC
README
提供用于与 Cloudflare API 交互的 PHP 客户端,请参阅: https://api.cloudflare.com/ 该 SDK 设计用于让开发者无需了解与 API 交互的所有底层细节即可与 CloudFlare 一起工作。
API 的设计考虑了易用性。
注意:CloudFlare 是 CloudFlare Inc. 的商标。此项目独立于 CloudFlare Inc. 维护。
使用方法
以下是一些 API 的常见用法
$api_key = 'your_cloudflare_api_key';
$user_email = 'your_cloudflare_email'
$api = new \Drupal\cloudflare\ZoneApi($api_key, $user_email );
$zoneId = $api->listZones()[0]->getZoneId();
$zone = $api->loadZone($zoneId);
$zone_settings = $zone-> getSettings();
$result = $api->purgeIndividualFiles($zoneId, array('path1'));
$result = $api->setSecurityLevel($zoneId, 'low');
结构
ApiTypes
将 API 的传入数据解析为类型化数据结构。为传入数据创建类型化类使得与 API 交互对开发者来说更为简单。它消除了在数组中猜测内容的需求。
ApiEndPoints
提供与远程 API 交互的功能。每个 API 端点扩展了 CloudFlareAPI。基于 CloudFlareAPI 的新端点获得了许多必要的结构工作,以便进行请求。
异常
SDK 依赖于异常模型进行错误处理。当发生意外结果时,会抛出异常。使用 SDK 进行开发时,您需要在应用程序级别提供 try-catch 块来处理异常。根据异常发生的 SDK 区域,抛出不同的异常。
CloudFlareAPI.php
提供对 Cloudflare 的 Web 服务调用功能。它通过围绕 guzzle 提供包装,使得使用此模块的人无需关注 guzzle 的底层实现细节。
开发者贡献指南
使用正确的命名空间
此 SDK 中所有代码都在 CloudFlarePhpSdk 内部使用 PSR-4 自动加载进行命名空间。
编码标准
贡献的代码必须通过代码嗅探器。
类型提示
对所有变量和参数进行类型提示。它使得使用 IDE 的开发者工作变得更加简单。
单元测试
SDK 的目标是 100% PHPUnit 测试覆盖率。它通常在 80% 的覆盖率附近。提交代码时,请确保更改被现有测试覆盖,或者提供新的测试!
Travis CI
该存储库配置为与 Travis CI 一起工作。所有拉取请求都会自动排队进行自动测试。PR 必须通过自动测试才能考虑集成。