villaflor / laravel-cloudflare
Laravel 访问 Cloudflare API 的客户端库
1.0.0
2021-02-27 20:33 UTC
Requires
- php: ^7.3|^8.0
- cloudflare/sdk: dev-master
Requires (Dev)
- ext-json: *
- orchestra/testbench: ^6.13
README
Cloudflare Laravel 库。这个库是官方 Cloudflare PHP SDK 的扩展
要求
- Cloudflare API 令牌
安装
在终端中
composer require villaflor/laravel-cloudflare
php artisan vendor:publish --provider="Villaflor\Cloudflare\CloudflareServiceProvider"
在 .env 文件中添加以下行
CLOUDFLARE_API_TOKEN={API token here}
可用的方法
CloudflareDNS
addRecord
listRecords
getRecordDetails
getRecordID
updateRecordDetails
deleteRecord
CloudflareDNSAnalytics
getReportTable
getReportByTime
CloudflareIps
listIPs
CloudflareZone
addZone
activationCheck
pause
unpause
getZoneById
listZones
getZoneID
getAnalyticsDashboard
changeDevelopmentMode
getCachingLevel
setCachingLevel
cachePurgeEverything
cachePurge
deleteZone
CloudflareZoneLockdown
listLockdowns
createLockdown
getLockdownDetails
updateLockdown
deleteLockdown
CloudflareZoneSettings
getMinifySetting
getRocketLoaderSetting
getAlwaysOnlineSetting
getEmailObfuscationSetting
getServerSideExcludeSetting
getHotlinkProtectionSetting
getBrowserCacheTtlSetting
updateBrowserCacheTtlSetting
updateMinifySetting
updateRocketLoaderSetting
updateAlwaysOnlineSetting
updateEmailObfuscationSetting
updateHotlinkProtectionSetting
updateServerSideExcludeSetting
用法
这个库使用依赖注入。依赖注入是一个听起来很高级的词,实际上意味着:类的依赖通过构造函数或在某些情况下通过“setter”方法“注入”到类中。
use Villaflor\Cloudflare\CloudflareDNS; class MyClass { private $cloudflareDNS; public function __construct(CloudflareDNS $cloudflareDNS) { $this->cloudflareDNS = $cloudflareDNS; } public function UpdateDNS() { $details = [ 'type' => 'A', 'name' => 'my-domain.com', 'content' => '1.2.3.4', 'ttl' => 1, 'proxied' => true, ]; return $this->cloudflareDNS->updateRecordDetails('zone-id', 'record-id', $details); } public function DetailDNS() { return $this->cloudflareDNS->getRecordDetails('zone-id', 'record-id'); } public function ListDNS() { return $this->cloudflareDNS->listRecords('zone-id'); } }