DescribeImageAttribute操作对此Web服务无效

时间:2017-08-10 09:44:03

标签: amazon-web-services amazon-ec2

我正在尝试获取AWS AMI的产品代码,并且根据http://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImageAttribute.html,我生成了请求并将其解雇。 我收到了这个回复。

<Response>
<Errors>
<Error>
<Code>InvalidAction</Code>
<Message>
The action DescribeImageAttribute is not valid for this web service.
</Message>
</Error>
</Errors>
<RequestID>b17b3f04-f7e6-47c7-a379-cb3d9a902865</RequestID>
</Response>

生成的网址为:https://ec2.amazonaws.com/?AWSAccessKeyId=MYKEY&Action=DescribeImageAttribute&Attribute=productCodes&ImageId=ami-823919e7&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2017-08-10T07%3A39%3A47Z&Signature=MY_SIGNATURE

1 个答案:

答案 0 :(得分:2)

您的请求似乎缺少&Version=2016-11-15属性,因此该服务显然假设您是一些非常老的代码,只知道EC2 API的旧版本,因此它将请求传递给旧版本请求处理程序,它不知道你要求的是什么,并以错误响应。

在签署请求之前,您需要2016-11-15 Drawer,其中openDrawerOffset是当前的API发行版本,显示在API参考手册中每页的顶部。每个AWS服务的日期都不同。

这是AWS管理的一种不会破坏API级别的方法。请求和响应中不兼容的更改将作为新的API版本部署,因此旧代码不会失败。