API 參考
Amazon API Gateway 提供的 API 可用來建立並部署您自己的 HTTP 和 WebSocket API。此外,標準的 AWS 軟體開發套件也提供 API Gateway API。
如果您使用 AWS 軟體開發套件擁有的語言,您可能會比較希望使用軟體開發套件,而非直接使用 API Gateway REST API。軟體開發套件可簡化身分驗證、與您的開發環境輕鬆整合,並可輕鬆存取 API Gateway 命令。
下列各處可看到 AWS 開發套件及 API Gateway REST API 參考文件:
API Gateway 服務端點
端點是可做為 AWS Web 服務進入點的 URL。API Gateway 支援下列端點類型:
當您提出請求時,您可以指定要使用的端點。如果您沒有指定端點,則預設使用 IPv4 端點。若要使用不同的端點類型,您必須在請求中將其指定。如需如何執行此作業的範例,請參閱 指定端點。如需可用端點的列表,請參閱 Amazon API Gateway 端點。
IPv4 端點
IPv4 端點僅支援 IPv4 流量。IPv4 端點適用於所有區域。
如果您指定一般端點、apigateway.amazonaws.com,我們會使用 us-east-1 的端點。若要使用不同的區域,請指定其相關聯的端點。例如,如果您指定 apigateway.us-east-2.amazonaws.com 做為端點,我們會將您的請求導向 us-east-2 端點。
IPv4 端點名稱使用以下命名慣例:
-
apigateway.region.amazonaws.com
例如,eu-west-1 區域的 IPv4 端點名稱是 apigateway.eu-west-1.amazonaws.com。
雙堆疊 (IPv4 和 IPv6) 端點
雙堆疊端點同時支援 IPv4 和 IPv6 流量。當您請求雙堆疊端點時,端點 URL 會解析為 IPv6 或 IPv4 位址,這點取決於您的網路和用戶端使用的通訊協定。
雙堆疊端點名稱使用以下命名慣例:
-
apigateway.region.api.aws
例如,eu-west-1 區域的雙堆疊端點名稱是 apigateway.eu-west-1.api.aws。
指定端點
下列範例顯示如何使用 apigateway 的 AWS CLI 指定 us-east-2 區域的端點。
-
雙堆疊
aws apigateway get-rest-apis --region us-east-2 --endpoint-url https://apigateway.us-east-2.api.aws -
IPv4
aws apigateway get-rest-apis --region us-east-2 --endpoint-url https://apigateway.us-east-2.amazonaws.com
下列範例顯示如何使用 apigatewayv2 的 AWS CLI 指定 us-east-2 區域的端點。
-
雙堆疊
aws apigatewayv2 get-apis --region us-east-2 --endpoint-url https://apigateway.us-east-2.api.aws -
IPv4
aws apigatewayv2 get-apis --region us-east-2 --endpoint-url https://apigateway.us-east-2.amazonaws.com
在 IAM 原則中使用 IPv6 地址
如果您使用任何 IAM 使用者政策或 API Gateway 資源政策來控制 API Gateway 或任何 API Gateway API 的存取權,請確認您的政策已更新並包含 IPv6 位址範圍。若政策未更新,因而無法處理 IPv6 位址,則可能在用戶端開始使用雙堆疊端點時,影響用戶端對 API Gateway 的存取。如需使用 IAM 管理存取許可的詳細資訊,請參閱 適用於 Amazon API Gateway 的 Identity and Access Management
篩選 IP 地址的 IAM 原則使用IP 地址條件運算子。下列身分政策允許 54.240.143.* 範圍內的 IP 位址取得識別符為 a123456789 的所有 HTTP 或 WebSocket API 資源的相關資訊。超出此範圍的任何 IP 位址都將遭拒,而無法存取 API 中所有資源的相關資訊。因為所有 IPv6 位址都在允許的範圍外,所以此政策會阻止 IPv6 位址存取有關 API 的資訊。
您可以修改 API 政策的 Condition 元素,以允許 IPv4 (54.240.143.0/24) 與 IPv6 (2001:DB8:1234:5678::/64) 位址範圍,如以下範例所示。您可以使用範例中所示的相同類型 Condition 區塊,來更新您的 IAM 使用者政策和 API Gateway 資源政策。
"Condition": { "IpAddress": { "aws:SourceIp": [ "54.240.143.0/24", "2001:DB8:1234:5678::/64" ] } }