在路由53 AWS中,如何处理重复的子域
我正在使用Java API的亚马逊路由53创建动态子域。有没有什么办法可以在使用Recordset或Route53的API的域中找到预先存在的子域。在路由53 AWS中,如何处理重复的子域
例如,我将动态创建子域,像
- ABC(abc.example.com)
- XYZ(xyz.example.com)
会发生什么事我再次添加abc,xyz,或者如何找到使用java API的RecordSet中的子域已经处于活动状态。
使用listResourceRecordSets()
获取托管区域的记录集列表,并检查该子域是否已经在该列表中。您可能可以过滤该列表以获取ListResourceRecordSetsRequest.withStartRecordName()
所需的子域名。
根据documentation,changeResourceRecordSets
方法在AWS Route53 JavaSDK中用于创建,更改和删除记录集。如果您尝试添加现有记录集,则不会导致修改(因为记录集存在且更改为空)。
但通过api它会抛出一个错误,所以我怎么能区分这在AmazonRoute53Client? – Charles
它抛出的错误是什么? –
您可以使用kichik提到的listResourceRecordSets()。如果你尝试再次添加同一资源就会抛出com.amazonaws.services.route53.model.InvalidChangeBatchException包含异常消息
Tried to create resource record set [name='abc.example.com.', type='CNAME'] but it already exists (Service: AmazonRoute53; Status Code: 400; Error Code: InvalidChangeBatch; Request ID: **********)
你能不能让我知道会发生什么,当我尝试添加相同的名称? – Charles