本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將API階段映射至 的自訂網域名稱 REST APIs
您可以使用API映射將API階段連接至自訂網域名稱。建立網域名稱並設定DNS記錄後,您可以使用API映射透過自訂網域名稱將流量傳送至APIs您的 。
API 映射會指定 API、 階段,以及選擇性用於映射的路徑。例如,您可以將 的production
階段映射API到 https://api.example.com/orders
。
您可以將 HTTP和 REST API 階段映射至相同的自訂網域名稱。
建立API映射之前,您必須具有 API、階段和自訂網域名稱。如需進一步了解如何建立自訂網域名稱,請參閱在 API Gateway 中設定區域自訂網域名稱。
路由API請求
您可以設定具有多個層級的API映射,例如 orders/v1/items
和 orders/v2/items
。
注意
若要設定具有多個層級的API映射,您必須使用具有 1.2 TLS 安全政策的區域自訂網域名稱。
對於具有多個層級的API映射,APIGateway 會將請求路由至具有最長相符路徑的API映射。API Gateway 只會考慮為API映射設定的路徑,而不是API路由,以選取要叫用API的路徑。如果沒有符合請求的路徑,APIGateway 會將請求傳送至API您已映射至空白路徑 的 (none)
。
對於使用具有多個層級API映射的自訂網域名稱,APIGateway 會將請求路由至具有最長相符字首的API映射。
例如,考慮https://api.example.com
具有下列API映射的自訂網域名稱:
-
(none)
已映射至 API 1。 -
orders
已映射至 API 2。 -
orders/v1/items
已映射至 API 3。 -
orders/v2/items
映射至 API 4。 -
orders/v2/items/categories
已映射至 API 5。
請求 | 已選取 API | 說明 |
---|---|---|
|
|
請求完全符合此API映射。 |
|
|
請求完全符合此API映射。 |
|
|
請求完全符合此API映射。 |
|
|
API Gateway 選擇具有最長相符路徑的映射。請求結束時的 |
|
|
API Gateway 選擇具有最長相符路徑的映射。 |
|
|
API Gateway 使用空映射作為全部擷取。 |
|
|
API Gateway 選擇具有最長相符字首的映射。 對於使用單一層級映射設定的自訂網域名稱,例如 |
限制
-
在API映射中,自訂網域名稱和映射APIs必須位於相同的 AWS 帳戶中。
-
API 映射只能包含字母、數字和下列字元:
$-_.+!*'()/
。 -
API 映射中路徑的長度上限為 300 個字元。
-
您可以針對每個網域名稱擁有 200 個具有多個層級的API映射。
-
您只能對應HTTPAPIs至具有 1.2 TLS 安全政策的區域自訂網域名稱。
-
您無法對應 WebSocket APIs至與 HTTPAPI或 REST 相同的自訂網域名稱API。
建立API映射
若要建立API映射,您必須先建立自訂網域名稱、 API和 階段。如需建立自訂網域名稱的資訊,請參閱在 API Gateway 中設定區域自訂網域名稱。
如需建立所有資源的範例 AWS Serverless Application Model 範本,請參閱 上的使用工作階段SAM