如何解决使用 API 网关删除自定义域名时出现的错误?

1 分钟阅读
0

我尝试删除 Amazon API Gateway 的自定义域名。然而,我在调用 DeleteDomainName API 操作时收到了错误讯息。

解决方法

对于您的场景中收到的错误消息,请遵循以下说明。

调用 DeleteDomainName API 时出现错误 (AccessDeniedException)

AWS Identity and Access Management (IAM) 基于身份的策略决定是否可以删除 API 网关资源。

检查以确认 API 调用者是否具有删除自定义域的必要权限。附加到尝试删除自定义域的客户端的 IAM policy 应具有类似于以下内容的权限:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "apigateway:Delete"
        ],
      "Resource": "arn:aws:apigateway:*::/*"
    }
  ]
}

有关更多信息,请参阅策略最佳实践

调用 DeleteDomainName API 时出现错误 (TooManyRequestsException)

DeleteDomainName API 请求的 API 网关配额是每个账户每 30 秒 1 个请求。该限制无法提高。如果您尝试使用具有内置重试机制的 AWS CLI 或开发工具包删除自定义域,则请求可能会失败。这是因为已达到每 30 秒 1 个请求的配额。

要解决这个问题,请在错误重试中使用指数回退和抖动,以便重试尝试之间的延迟逐渐变长。


相关信息

指数回退和抖动

AWS 官方
AWS 官方已更新 2 年前