本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
PublishLayerVersion
從 ZIP 封存中建立 AWS Lambda 層。每次以相同層名稱呼叫 PublishLayerVersion
時,就會建立新的版本。
使用 CreateFunction 或 UpdateFunctionConfiguration,將層新增至函數。
請求語法
POST /2018-10-31/layers/LayerName
/versions HTTP/1.1
Content-type: application/json
{
"CompatibleArchitectures": [ "string
" ],
"CompatibleRuntimes": [ "string
" ],
"Content": {
"S3Bucket": "string
",
"S3Key": "string
",
"S3ObjectVersion": "string
",
"ZipFile": blob
},
"Description": "string
",
"LicenseInfo": "string
"
}
URI 請求參數
請求會使用下列 URI 參數。
- LayerName
-
layer 的名稱或 Amazon Resource Name (ARN)。
長度限制:長度下限為 1。長度上限為 140。
模式:
(arn:[a-zA-Z0-9-]+:lambda:[a-zA-Z0-9-]+:\d{12}:layer:[a-zA-Z0-9-_]+)|[a-zA-Z0-9-_]+
必要:是
請求主體
請求接受採用 JSON 格式的下列資料。
- CompatibleArchitectures
-
相容指令集架構的清單。
類型:字串陣列
陣列成員:最多 2 個項目。
有效值:
x86_64 | arm64
必要:否
- CompatibleRuntimes
-
相容函數執行時間的清單。用於使用 ListLayers 和 ListLayerVersions 進行篩選。
下列清單包含已淘汰的執行時間。如需詳細資訊,請參閱執行時間淘汰政策。
類型:字串陣列
陣列成員:最多 15 個項目。
有效值:
nodejs | nodejs4.3 | nodejs6.10 | nodejs8.10 | nodejs10.x | nodejs12.x | nodejs14.x | nodejs16.x | java8 | java8.al2 | java11 | python2.7 | python3.6 | python3.7 | python3.8 | python3.9 | dotnetcore1.0 | dotnetcore2.0 | dotnetcore2.1 | dotnetcore3.1 | dotnet6 | nodejs4.3-edge | go1.x | ruby2.5 | ruby2.7 | provided | provided.al2 | nodejs18.x | python3.10 | java17 | ruby3.2 | python3.11 | nodejs20.x | provided.al2023 | python3.12 | java21
必要:否
- Content
-
函數 layer 封存。
類型:LayerVersionContentInput 物件
必要:是
- Description
-
版本的描述。
類型:字串
長度限制:長度下限為 0。長度上限為 256。
必要:否
- LicenseInfo
-
layer 的軟體授權。其可為下列任何一項:
-
SPDX 授權識別符
。例如 MIT
。 -
託管在網際網路上授權的 URL。例如
https://opensource.org/licenses/MIT
。 -
授權的完整文字。
類型:字串
長度限制:長度上限為 512。
必要:否
-
回應語法
HTTP/1.1 201
Content-type: application/json
{
"CompatibleArchitectures": [ "string" ],
"CompatibleRuntimes": [ "string" ],
"Content": {
"CodeSha256": "string",
"CodeSize": number,
"Location": "string",
"SigningJobArn": "string",
"SigningProfileVersionArn": "string"
},
"CreatedDate": "string",
"Description": "string",
"LayerArn": "string",
"LayerVersionArn": "string",
"LicenseInfo": "string",
"Version": number
}
回應元素
如果動作成功,則服務傳回 HTTP 201 回應。
服務會傳回下列 JSON 格式的資料。
- CompatibleArchitectures
-
相容指令集架構的清單。
類型:字串陣列
陣列成員:最多 2 個項目。
有效值:
x86_64 | arm64
- CompatibleRuntimes
-
層的相容執行時間。
下列清單包含已淘汰的執行時間。如需詳細資訊,請參閱執行時間淘汰政策。
類型:字串陣列
陣列成員:最多 15 個項目。
有效值:
nodejs | nodejs4.3 | nodejs6.10 | nodejs8.10 | nodejs10.x | nodejs12.x | nodejs14.x | nodejs16.x | java8 | java8.al2 | java11 | python2.7 | python3.6 | python3.7 | python3.8 | python3.9 | dotnetcore1.0 | dotnetcore2.0 | dotnetcore2.1 | dotnetcore3.1 | dotnet6 | nodejs4.3-edge | go1.x | ruby2.5 | ruby2.7 | provided | provided.al2 | nodejs18.x | python3.10 | java17 | ruby3.2 | python3.11 | nodejs20.x | provided.al2023 | python3.12 | java21
- Content
-
有關層版本的詳細資訊。
- CreatedDate
-
建立層版本的日期,採用 ISO-8601 格式
(YYYY-MM-DDThh:mm:ss.sTZD)。 類型:字串
- Description
-
版本的描述。
類型:字串
長度限制:長度下限為 0。長度上限為 256。
- LayerArn
-
該層的 ARN。
類型:字串
長度限制:長度下限為 1。長度上限為 140。
模式:
arn:[a-zA-Z0-9-]+:lambda:[a-zA-Z0-9-]+:\d{12}:layer:[a-zA-Z0-9-_]+
- LayerVersionArn
-
layer 版本的 ARN。
類型:字串
長度限制:長度下限為 1。長度上限為 140。
模式:
arn:[a-zA-Z0-9-]+:lambda:[a-zA-Z0-9-]+:\d{12}:layer:[a-zA-Z0-9-_]+:[0-9]+
- LicenseInfo
-
layer 的軟體授權。
類型:字串
長度限制:長度上限為 512。
- Version
-
版本號碼。
類型:Long
錯誤
如需所有動作常見錯誤的資訊,請參閱常見錯誤。
- CodeStorageExceededException
-
您的 AWS 帳戶 已超過總程式碼大小上限。如需詳細資訊,請參閱 Lambda 配額。
HTTP 狀態碼:400
- InvalidParameterValueException
-
請求中的其中一個參數無效。
HTTP 狀態碼:400
- ResourceNotFoundException
-
請求中指定的資源不存在。
HTTP 狀態碼:404
- ServiceException
-
AWS Lambda 服務發生內部錯誤。
HTTP 狀態碼:500
- TooManyRequestsException
-
超出請求輸送量限制。如需詳細資訊,請參閱 Lambda 配額。
HTTP 狀態碼:429
另請參閱
如需在語言特定的 AWS 開發套件之一中使用此 API 的詳細資訊,請參閱下列說明: