mehr-it / hetzner-dns-api
Hetzner DNS API 的非官方 PHP 客户端
0.8.1
2021-05-21 08:04 UTC
Requires
- php: ^7.1
- ext-json: *
- guzzlehttp/guzzle: ^6.0|^7.0
Requires (Dev)
- phpunit/phpunit: ^6.5|^7.4
This package is auto-updated.
Last update: 2024-09-21 15:15:00 UTC
README
此库实现了一个非官方但完整的 Hetzner 公共 DNS API PHP 客户端。
为什么是专有许可?
由于 Hetzner 对于支持 PHP DNS API 客户端库的开发没有表现出兴趣,我们不希望独自承担产品集成的开发成本。如果有人愿意参与的话,我们愿意在 MIT 许可下分享此包...
安装
您应该使用 composer 安装此库
composer require mehr-it/hetzner-dns-api
用法
以下示例演示了创建新的 DNS 记录。有关所有操作的完整列表,请参阅官方 API 文档。客户端类的对应方法和参数命名与文档中相似。
$apiToken = '...'; // see https://dns.hetzner.com/settings/api-token to generate one
// create a client instance
$client = new HetznerDnsClient($apiToken);
// retrieve ID of the target zone
$zoneId = $client->getZoneByName('mytestzone.de')->getZones()[0]->getId();
// create new record
$response = $client->createRecord(
(new Record())
->zoneId($zoneId)
->ttl(900)
->type(Record::TYPE_A)
->value('8.8.8.8')
->name('www')
);
$recordId = $response->getRecord()->getId();
已知问题
Hetzner DNS API 存在一些错误。这些错误已经报告,但几个月来尚未修复。以下功能受到影响
- getAllRecords(分页似乎不正确工作)
- bulkUpdateRecords
- validateZoneFilePlain(有效记录不返回)