

# 禁用 REST API 的默认端点
<a name="http-api-disable-default-endpoint"></a>

默认情况下，客户端可以通过使用 API Gateway 为 API 生成的 `execute-api` 端点来调用您的 API。为确保客户端只能通过使用自定义域名访问您的 API，请禁用默认 `execute-api` 端点。禁用默认端点时，它会影响 API 的所有阶段。

以下过程演示了如何禁用 HTTP API 的默认端点。

------
#### [ AWS 管理控制台 ]

1. 通过以下网址登录到 Amazon API Gateway 控制台：[https://console.aws.amazon.com/apigateway](https://console.aws.amazon.com/apigateway)。

1. 选择 HTTP API。

1. 选择 API 的 ID 以打开 **API 详细信息**页面。

1. 在 **API 详细信息**选项卡上，选择**编辑**。

1. 对于**默认端点**，选择**禁用**。

1. 选择**保存**。

   如果开启了阶段的自动部署，您无需重新部署 API 即可使更改生效。否则，您必须重新部署 API。

1. （可选）选择**部署**，然后重新部署您的 API 或创建一个新阶段使更改生效。

------
#### [ AWS CLI ]

以下 [update-domain-name](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/update-domain-name.html) 命令禁用 HTTP API 的默认端点：

```
aws apigatewayv2 update-api \
    --api-id abcdef123 \
    --disable-execute-api-endpoint
```

禁用默认端点后，除非启用了自动部署，否则必须部署 API 才能使更改生效。

下面的 [create-deployment](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/create-deployment.html) 命令将创建一个部署。

```
aws apigatewayv2 create-deployment \
    --api-id abcdef123 \
    --stage-name dev
```

------