2013-05-21 93 views
3

我正在使用dnscurl.pl,它是通过Amazon推荐的,以便从route53中删除记录集。我遇到了一个我无法弄清楚的错误。 Route53正在响应错误:InvalidInput。消息:无效的XML; cvc-elt.1:找不到元素'ChangeResourceRecordSetsRequest'的声明。AWS route53删除资源集

<ErrorResponse xmlns="https://route53.amazonaws.com/doc/2012-02-29/"> 
     <Error><Type>Sender</Type><Code>InvalidInput</Code> 
     <Message>Invalid XML ; cvc-elt.1: Cannot find the declaration of element 'ChangeResourceRecordSetsRequest'.</Message> 
     </Error><RequestId>51c5c1de-c246-11e2-b977-934c36c18aa7</RequestId>   
    </ErrorResponse> 

我的要求如下:

dnscurl.pl --keyname my_key_name -- -s -H "Content-Type: text/xml; charset=UTF-8" -X POST --upload-file /tmp/tmp.qEYXdPVpFh https://route53.amazonaws.com/2012-02-29/hostedzone/xxxxxxxxxx/rrset 

正在使用的XML文件:

<?xml version="1.0" encoding="UTF-8"?> 
     <ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12"> 
     <ChangeBatch> 
      <Comment>Deleting Record for staging.mysite.com. at Tue May 21 17:37:52 UTC 2013</Comment> 
      <Changes> 
      <Change><Action>DELETE</Action><ResourceRecordSet><Name>staging.mysite.com.</Name><Type>A</Type><AliasTarget><HostedZoneId>xxxxxxxxxx</HostedZoneId><DNSName>awseb-e-s-awsebloa-xxxxxxxx-xxxxxxx.us-east-1.elb.amazonaws.com.</DNSName></AliasTarget></ResourceRecordSet></Change> 

      <Change><Action>DELETE</Action><ResourceRecordSet><Name>ec2.staging.mysite.com.</Name><Type>CNAME</Type><TTL>300</TTL><ResourceRecords><ResourceRecord><Value>ec2-xx.xx.xx.xx.compute-1.amazonaws.com</Value></ResourceRecord></ResourceRecords></ResourceRecordSet></Change> 
    </Changes> 
</ChangeBatch> 

我找不到关于为什么XML是任何信息无效。它检查所有XML验证器。任何想法去哪里与此?

谢谢!

回答

0

尝试修改此:

<ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12"> 

这样:

<ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2012-12-12/"> 
0

我注意到,你不要关闭:

</ChangeResourceRecordSetsRequest>