在 API Gateway 中設定 API 階段的標籤 - Amazon API Gateway

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 API Gateway 中設定 API 階段的標籤

在 API Gateway 中,您可以將標籤新增至 API 階段、從階段中移除標籤或檢視標籤。若要這麼做,您可以使用 API Gateway 主控台、 AWS CLI/SDK 或 API Gateway REST API。

階段也可以繼承其父系 REST API 的標籤。如需更多詳細資訊,請參閱 Amazon API Gateway V1 API 中的標籤繼承

如需標記 API Gateway 資源的詳細資訊,請參閱API Gateway 資源的標記

使用 API Gateway 主控台設定 API 階段的標籤

下列程序說明如何設定 API 階段的標籤。

使用 API Gateway 主控台設定 API 階段的標籤
  1. 登入 API Gateway 主控台。

  2. 選擇現有的 API 或建立新的 API,其中包含資源、方法與對應的整合。

  3. 選擇階段,或將 API 部署到新的階段。

  4. 在主導覽窗格中,選擇階段

  5. 選擇 Tags (標籤) 索引標籤。您可能需要選擇向右箭頭按鈕才能顯示此索引標籤。

  6. 選擇管理標籤

  7. 標籤編輯器中,選擇新增標籤。在 Key (索引鍵) 欄位中輸入標籤索引鍵 (例如 Department),並在 Value (值) 欄位中輸入標籤值 (例如 Sales)。選擇儲存以儲存標籤。

  8. 如果需要,請重複步驟 5 將更多標籤新增至 API 階段。每個階段的標籤數上限為 50。

  9. 若要從階段中移除現有標籤,請選擇移除

  10. 如果您先前已在 API Gateway 主控台中部署 API,就必須重新部署該 API,變更才會生效。

使用設定 API 階段的標籤 AWS CLI

您可以使用建立階段命令或標籤資 AWS CLI 源命令來設定 API 階段的標籤。您可以使用無標籤資源命令從 API 階段刪除一個或多個標籤

下列範例會在建立test階段時新增標籤:

aws apigateway create-stage --rest-api-id abc1234 --stage-name test --description 'Testing stage' --deployment-id efg456 --tag Department=Sales

下列範例會將標籤新增至prod舞台:

aws apigateway tag-resource --resource-arn arn:aws:apigateway:us-east-2::/restapis/abc123/stages/prod --tags Department=Sales

下列範例會從test舞台移除Department=Sales標籤:

aws apigateway untag-resource --resource-arn arn:aws:apigateway:us-east-2::/restapis/abc123/stages/test --tag-keys Department

使用 API Gateway REST API 設定 API 階段的標籤

您可以使用 API Gateway REST API 執行下列一項操作來設定 API 階段的標籤:

  • 呼叫 tags:tag 來標記 API 階段。

  • 呼叫 tags:untag 從 API 階段中刪除一或多個標籤。

  • 呼叫 stage:create 以新增一或多個標籤到您建立的 API 階段。

您也可以呼叫 tags:get 來說明 API 階段中的標籤。

標記 API 階段

您可以在將 API (m5zr3vnks7) 部署到階段 (test) 之後,呼叫 tags:tag 來標記階段。必要的階段 Amazon Resource Name (ARN) (arn:aws:apigateway:us-east-1::/restapis/m5zr3vnks7/stages/test) 必須以 URL 編碼 (arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftest)。

PUT /tags/arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftest { "tags" : { "Department" : "Sales" } }

您也可以使用前一個請求,將現有的標籤更新為新的值。

您可以在呼叫 stage:create 建立階段時,將標籤新增至階段:

POST /restapis/<restapi_id>/stages { "stageName" : "test", "deploymentId" : "adr134", "description" : "test deployment", "cacheClusterEnabled" : "true", "cacheClusterSize" : "500", "variables" : { "sv1" : "val1" }, "documentationVersion" : "test", "tags" : { "Department" : "Sales", "Division" : "Retail" } }

取消標記 API 階段

若要從階段中移除 Department 標籤,請呼叫 tags:untag

DELETE /tags/arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftest?tagKeys=Department Host: apigateway.us-east-1.amazonaws.com Authorization: ...

若要移除多個標籤,請在查詢運算式中使用標籤索引鍵的逗號分隔清單,例如 ?tagKeys=Department,Division,…

說明 API 階段的標籤

若要說明指定階段的現有標籤,請呼叫 tags:get

GET /tags/arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftags Host: apigateway.us-east-1.amazonaws.com Authorization: ...

成功回應類似如下:

200 OK { "_links": { "curies": { "href": "http://docs.aws.amazon.com/apigateway/latest/developerguide/restapi-tags-{rel}.html", "name": "tags", "templated": true }, "tags:tag": { "href": "/tags/arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftags" }, "tags:untag": { "href": "/tags/arn%3Aaws%3Aapigateway%3Aus-east-1%3A%3A%2Frestapis%2Fm5zr3vnks7%2Fstages%2Ftags{?tagKeys}", "templated": true } }, "tags": { "Department": "Sales" } }