更新功能 - Amazon CloudFront

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

更新功能

您隨時都可以更新。這些變更只會對 DEVELOPMENT 階段中的函數版本進行。若要將更新從DEVELOPMENT階段複製到LIVE,您必須發行函數

您可以在 CloudFront 控制台中或使用 AWS Command Line Interface (AWS CLI)更新函數的代碼。

Console
若要更新函數程式碼
  1. 登入 CloudFront 主控台,https://console.aws.amazon.com/cloudfront/v4/home#/functions然後選擇「功能」頁面。

    選擇要更新的函數。

  2. 選擇 「編輯」 並進行下列變更:

    • 更新「詳細資料」區段中的任何欄位。

    • 更改函數代碼。選擇「生成」選項卡,進行更改,然後選擇「保存更改」以保存對代碼的更改。

CLI
若要更新函式程式碼
  1. 開啟命令列視窗。

  2. 執行下列命令。

    此範例會使用fileb://符號來傳入檔案。它還會包括換行符號,讓命令更易於讀取。

    aws cloudfront update-function \ --name MaxAge \ --function-config '{"Comment":"Max Age 2 years","Runtime":"cloudfront-js-2.0","KeyValueStoreAssociations":{"Quantity":1,"Items":[{"KeyValueStoreARN":"arn:aws:cloudfront::111122223333:key-value-store/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"}]}}' \ --function-code fileb://function-max-age-v1.js \ --if-match ETVABCEXAMPLE
    備註
    • 您可以透過名稱和 ETag (在 if-match 參數中) 來識別函數。請確定您使用目前的 ETag。您可以使用描述操作獲取它。

    • 即使您不想要變更,您也必須包含 function-code

    • 要小心 function-config。您應該傳遞您想要在組態中保留的所有內容。具體而言,請依下列方式處理鍵值存放區:

      • 若要保留現有的金鑰值存放區關聯 (如果有的話),請指定有存放區的名稱。

      • 若要變更關聯,請指定金鑰值存放區的名稱。

      • 若要移除關聯,請省略KeyValueStoreAssociations參數。

    如果命令成功執行,您會看到如下所示的輸出。

    ETag: ETVXYZEXAMPLE FunctionSummary: FunctionConfig: Comment: Max Age 2 years \ Runtime: cloudfront-js-2.0 \ KeyValueStoreAssociations= \ {Quantity=1, \ Items=[{KeyValueStoreARN='arn:aws:cloudfront::111122223333:key-value-store/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111'}]} \ FunctionMetadata: \ CreatedTime: '2021-04-18T20:38:56.915000+00:00' \ FunctionARN: arn:aws:cloudfront::111122223333:function/MaxAge \ LastModifiedTime: '2023-12-19T23:41:15.389000+00:00' \ Stage: DEVELOPMENT \ Name: MaxAge \ Status: UNPUBLISHED

大多數資訊都是從請求中複製的。其他資訊由新增 CloudFront。

備註
  • ETag— 每次修改金鑰值存放區時,此值都會變更。

  • FunctionARN— 您的 CloudFront 功能的 ARN。

  • Stage— 函數 (LIVEDEVELOPMENT) 的階段。

  • Status— 函數 (PUBLISHEDUNPUBLISHED) 的狀態。