无法使用Route53 API更新记录

时间:2014-02-12 18:01:24

标签: php amazon-web-services amazon-route53

我已经为Amazon Route53设置了正确的请求来创建新的资源记录。这完美无缺。

但是,现在我想简单地更改该记录的值。当我使用新值再次发出相同的请求时,我会收到以下消息的异常。

  

尝试创建资源记录集[name ='my.test.domain。',type ='A']   但它已经存在

在这两个请求中,我都将Action参数设置为CREATE,因为唯一的选择是DELETE

我正在使用PHP SDK的changeResourceRecordSets方法,该方法的描述就像......

  

使用此操作可以创建或更改权威DNS   信息。

在Amazon Web Services文档的其他地方,我还找到了以下代码段......

  

如果资源记录集确实存在,则Amazon Route 53会对其进行更新   请求中的值。 Amazon Route 53可以更新现有的   仅当以下所有值匹配时才设置资源记录:名称,   Type和SetIdentifier(用于延迟,加权和故障转移资源   记录集。)

这是否意味着我需要 SetIdentifier参数?我没有,因为这些是延迟,加权或故障转移记录。或者那些是唯一可以像这样更新的记录?

1 个答案:

答案 0 :(得分:3)

答案是使用UPSERT操作。 PHP SDK没有记录此操作,但确实存在。

UPSERT 会更新记录(如果存在),或者如果记录不存在则更新记录。