本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立函數
您可以分兩個階段建立函式:
-
將函數代碼創建為 JavaScript。您可以使用 CloudFront 控制台中的默認示例,也可以編寫自己的示例。如需詳細資訊,請參閱下列主題:
-
用 CloudFront 於建立函數並包含您的程式碼。程式碼存在於函數內部 (而不是引用形式)。
- Console
-
建立 函數
-
登入 CloudFront 主控台,https://console.aws.amazon.com/cloudfront/v4/home#/functions
然後選擇「功能」頁面。 -
選擇建立函數。
-
輸入在中唯一的函數名稱 AWS 帳戶,選擇 JavaScript 版本,然後選擇繼續。新函數的詳細資訊頁面會隨即顯示。
注意
若要在函數中使用索引鍵值配對,您必須選擇 JavaScript 執行階段 2.0。
-
在 [函數程式碼] 區段中,選擇 [建置] 索引標籤,然後輸入函數程式碼。建置索引標籤中包含的範例程式碼會說明函數程式碼的基本語法。
-
選擇儲存變更。
-
如果函數代碼使用鍵值對,則必須關聯索引鍵值存放區。
您可以在第一次建立函數時關聯索引鍵值存放區。或者,您可以稍後更新函數來關聯它。
若要立即關聯鍵值存放區,請依照下列步驟執行:
-
移至「關聯」 KeyValueStore 區段,然後選擇「關聯現有」 KeyValueStore。
-
選取函數中包含索引鍵值配對的索引鍵值存放區,然後選擇「關聯 KeyValueStore」。
CloudFront 立即將商店與該功能相關聯。您無需儲存函數。
-
-
- CLI
-
如果您使用 CLI,通常會先在檔案中建立函數程式碼,然後使用 AWS CLI來建立函數。
建立 函數
-
在檔案中建立函數程式碼,並將其儲存於電腦可以連線的目錄中。
-
執行命令,如範例所示。此範例會使用
fileb://
符號來傳入檔案。它還會包括換行符號,讓命令更易於讀取。aws cloudfront create-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
備註
-
Runtime
— 的版本 JavaScript. 若要在函數中使用索引鍵值配對,您必須指定 2.0 版。 -
KeyValueStoreAssociations
— 如果您的函數使用鍵值對,則可以在第一次建立函數時關聯索引鍵值存放區。或者,您可以稍後使用來關聯它update-function
。Quantity
永遠等於1
,因為每個函數只能有一個與其關聯的鍵值存放區。
如果命令成功執行,您會看到如下所示的輸出。
ETag: ETVABCEXAMPLE 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-11-19T20:38:56.915000+00:00' Stage: DEVELOPMENT Name: MaxAge Status: UNPUBLISHED Location: https://cloudfront.amazonaws.com/2020-05-31/function/arn:aws:cloudfront:::function/MaxAge
大多數資訊都是從請求中複製的。其他資訊由新增 CloudFront。
備註
-
ETag
— 每次修改金鑰值存放區時,此值都會變更。您可以使用此值和函數名稱來引用 future 的函數。確保您始終使用當前的ETag
。 -
FunctionARN
— 您的 CloudFront功能的 ARN。 -
111122223333 — 該. AWS 帳戶
-
Stage
— 函數 (LIVE
或DEVELOPMENT
) 的階段。 -
Status
— 函數 (PUBLISHED
或UNPUBLISHED
) 的狀態。
-
-
建立函數之後,它就會新增至DEVELOPMENT
舞台。我們建議您先測試您的函數,然後再發佈它。發佈函數之後,函數會變更為LIVE
階段。