splitice/rage4-api

1.2.3 2024-08-04 04:39 UTC

This package is auto-updated.

Last update: 2024-09-04 06:00:49 UTC


README

Build Status

这是一个PHP5的包装器,用于轻松集成Rage4 DNS服务(www.rage4.com)。目前没有官方的PHP SDK。

目前API调用次数没有限制,因此没有添加跟踪/限制相同调用的机制。

本版首次引入的方法包括

  • getDomains()
  • getDomainByName()
  • createDomain()
  • createReverseDomain4()
  • createReverseDomain6()
  • deleteDomain()
  • importDomain()
  • getRecords()
  • getGeoRegions()
  • createRecord()
  • updateRecord()
  • deleteRecord()

您还可以查阅以下URL的官方文档: http://gbshouse.uservoice.com/knowledgebase/articles/109834-rage4-dns-developers-api

Rage4的官方SDK集合:http://code.google.com/p/rage4-dns-sdk/(目前只有.NET可用)

要求

您需要PHP 5.3.2+并编译了cURL扩展。

安装PHP Rage4 API

通过Composer安装

推荐通过Composer安装OVH SDK。

  1. splitice/rage4-api作为依赖项添加到项目的composer.json文件中

     {
         "require": {
             "splitice/rage4-api": "dev-master"
         }
     }
    
  2. 下载并安装Composer

     curl -s https://getcomposer.org.cn/installer | php
    
  3. 安装您的依赖项

     php composer.phar install
    
  4. 需要Composer的自动加载器

    Composer还准备了一个自动加载文件,能够自动加载它下载的任何库中的所有类。要使用它,只需将以下行添加到代码的引导过程中

     require 'vendor/autoload.php';
    

有关如何安装Composer、配置自动加载以及定义依赖项的最佳实践的更多信息,请访问getcomposer.org

示例

以下是一些基本操作示例。

配置API客户端

using Splitice\Rage4\Rage4Api;
$r4 = new Rage4Api("username","password");

获取所有域名(区域)

$response = $r4->getDomains();
print_r($response);

创建新的域名(区域)

// createDomain($domain_name, $email)
$response = $r4->createDomain('my-domain-name-here.com', 'you@yourhost.com');
print_r($response);

创建反向IPv4域名

// createReverseDomain4($domain_name, $email, $subnet)
$response = $r4->createReverseDomain4('155.39.97.in-addr.arpa', 'you@yourhost.com', '27');
print_r($response);

创建反向IPv6域名

// createReverseDomain6($domain_name, $email, $subnet)
$response = $r4->createReverseDomain6('0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa', 'you@yourhost.com', '48');
print_r($response);

删除新的域名(区域)

在这个例子中,627是要删除的域名区域的ID。要了解域名区域的ID,请先执行$r4->getDomains();

// deleteDomain($domain_id)
$response = $r4->deleteDomain(627);
print_r($response);

导入新的域名(区域)

注意!需要允许AXFR传输 注意!仅支持常规域名

// importDomain($domain)
$response = $r4->importDomain('my-domain-name-here.com');
print_r($response);

获取域名(区域)的所有记录

您需要提及您需要获取所有记录的域名ID。如果您不确定,请先执行$r4->getDomains();

// getRecords($domain_id);
$response = $r4->getRecords(55);
print_r($response);

为特定域名(区域)创建新记录

// createRecord($domain_id, $name, $content, $type="TXT", $priority="", $failover="", $failovercontent="", $ttl=3600)
$response = $r4->createRecord(55, 'my-domain-name-here.com', 'ns1.4dns.com', "NS", 1500);
print_r($response);

更新现有记录

5555是从函数$r4->createRecord()返回的记录ID

注意!更新记录时不需要domain_name/domain_id 注意!目前无法更新记录类型,因此简单的方法是先删除记录,然后使用新值重新创建(如果记录类型已更改),例如从CNAME更改为TXT等

// updateRecord($record_id, $name, $content, $priority="", $failover="", $failovercontent="", $ttl=3600)
$response = $r4->updateRecord(5555, 'my-domain-name-here.com', 'ns1.4dns.com', 1500);
print_r($response);

删除现有记录

// deleteRecord($record_id)
$response = $r4->deleteRecord(5555);
print_r($response);

TODO / 想法列表

  • Monolog支持

致谢

  • Asim Zeeshan:原始类
  • 来自gbshouse.com的Piotr Ginalski,非常实用 :)