すべてのプロダクト
Search
ドキュメントセンター

Function Compute:UpdateFunction

最終更新日:Sep 11, 2024

関数に関する情報を更新します。

デバッグ

OpenAPI Explorer は署名値を自動的に計算します。 利便性を考慮して、この操作は OpenAPI Explorer で呼び出すことが推奨されます。 OpenAPI Explorer は、さまざまな SDK に対して操作のサンプルコードを動的に生成します。

リクエストヘッダー

この操作では、共通リクエストヘッダーと特殊リクエストヘッダーの両方を使用します。 次の表に、特別なリクエストヘッダーを示します。 共通リクエストヘッダーの詳細については、「共通パラメーター」をご参照ください。

パラメーター

データ型

必須

説明

If-Match

String

なし

e19d5cd5af0378da05f63f891c7467af

変更されたリソースが変更されるリソースと一致するようにするために使用される値。 CreateFunctionGetFunction、およびUpdateFunction操作の応答から値を取得できます。

X-Fc-コード-チェックサム

String

なし

543402527838814 ****

関数コードパッケージのCRC-64値。

リクエスト構文

PUT /services/{serviceName}/functions/{functionName} HTTP/1.1

リクエストパラメーター

パラメーター

データ型

位置

必須

説明

serviceName

String

パス

あり

service_name

サービスの名前です。

functionName

String

パス

あり

function_name

関数の名前。

オブジェクト

本文

なし

関数の定義。

code

コード

本文

なし

ZIP形式のコードパッケージ。

customContainerConfig

CustomContainerConfig

本文

なし

カスタムコンテナーランタイムの設定。 カスタムコンテナランタイムを設定した後、カスタムコンテナイメージを使用して関数を実行できます。

レイヤー

文字列の配列

本文

なし

02f81d283888f5ec63442a88fe82b260# レイヤー名 #1

レイヤーリソースの名前。

説明

String

本文

なし

test_description

関数の説明。

environmentVariables

地図

本文

なし

関数に設定されている環境変数。 関数から環境変数の値を取得できます。 詳細については、「概要」をご参照ください。

ハンドラー

String

本文

なし

index.handler

関数のハンドラー。The handler of the function. 形式はプログラミング言語によって決まります。 詳細は、「関数ハンドラー」をご参照ください。

memorySize

Integer

本文

なし

512

関数のメモリサイズ。 単位:MB。 メモリサイズは64 MBの倍数です。 インスタンスで使用できるメモリサイズは、インスタンスタイプによって異なります。 詳細については、「インスタンスの仕様」をご参照ください。

runtime

String

本文

なし

python3

関数のランタイム環境。 有効な値:nodejs14,nodejs12,nodejs10,nodejs8,nodejs6,nodejs4.4,python3,python2.7,java11,java8,go1,php7.2,dotnetcore2.1,カスタム、およびカスタムコンテナー. Function Computeでサポートされているランタイム環境の詳細については、「サポートされている関数ランタイム環境」をご参照ください。

timeout

String

本文

なし

60

Function Computeが関数を実行するためのタイムアウト期間。 単位は秒です。 デフォルト値: 0。 有効な値: 1 ~ 86400 期間が終了すると、関数の実行は終了します。

initializationTimeout

Integer

本文

なし

60

初期化子関数の実行のタイムアウト時間。 単位は秒です。 デフォルト値: 3。 有効な値:1 から 300。 期間が終了すると、イニシャライザ関数の実行は終了する。

initializer

String

本文

なし

index.handler

初期化子関数のハンドラー。 値の形式はプログラミング言語によって異なります。 詳細については、「Initializer関数」をご参照ください。

caPort

Integer

本文

なし

9000

HTTPサーバーがカスタムランタイムまたはカスタムコンテナランタイムをリッスンするポート。

関数コードパッケージは、次の2つの方法で提供できます。 1つのリクエストで1つのメソッドのみを使用する必要があります。

  • コードパッケージが格納されているObject Storage Service (OSS) バケット (ossBucketName) の名前とオブジェクト名 (ossObjectName) を指定します。

  • zipFileパラメーターの値をZIPファイルのBase64-encodedの内容に設定します。

レスポンスパラメーター

パラメーター

データ型

説明

ETag

String

e19d5cd5af0378da05f63f891c74 ****

変更された関数が、変更される予定の関数と一致するようにするために使用される値。 値は、CreateFunctionGetFunction、およびUpdateFunction操作の応答から取得されます。

codeChecksum

String

2825179536350 ****

関数コードパッケージのCRC-64値。

codeSize

Long

421

関数コードパッケージのサイズ。 単位:byte。

createdTime

String

2020-04-01T08:14:58Z

関数が作成された時刻。

customContainerConfig

CustomContainerConfig

カスタムコンテナーランタイムの設定。 カスタムコンテナランタイムを設定した後、カスタムコンテナイメージを使用して関数を実行できます。

レイヤー

文字列の配列

02f81d283888f5ec63442a88fe82 ****# レイヤー名 #1

レイヤーリソースの名前。

説明

String

test_description

関数の説明。

environmentVariables

地図

関数に設定されている環境変数。 関数から環境変数の値を取得できます。 詳細については、「概要」をご参照ください。

functionId

String

e68905d5-f81c-4238-a5e4-***

関数ごとにシステムによって生成されたID。 IDはグローバルに一意です。

functionName

String

function_name

関数の名前。

ハンドラー

String

index.handler

関数のハンドラー。The handler of the function. 形式はプログラミング言語によって決まります。 詳細は、「関数ハンドラー」をご参照ください。

lastModifiedTime

Long

2016-08-15T17:00:00.000 0000

関数が最後に更新された時刻。

memorySize

Integer

512

関数のメモリサイズ。 単位:MB。 メモリサイズは64 MBの倍数です。 インスタンスで使用できるメモリサイズは、インスタンスタイプによって異なります。 詳細については、「インスタンスの仕様」をご参照ください。

runtime

String

python3

関数のランタイム環境。 有効な値:nodejs14,nodejs12,nodejs10,nodejs8,nodejs6,nodejs4.4,python3,python2.7,java11,java8,go1,php7.2,dotnetcore2.1,カスタム、およびカスタムコンテナー. Function Computeでサポートされているランタイム環境の詳細については、「サポートされている関数ランタイム環境」をご参照ください。

timeout

Integer

10

Function Computeが関数を実行するためのタイムアウト期間。 単位は秒です。 デフォルト値: 0。 有効な値: 1 ~ 86400 期間が終了すると、関数の実行は終了します。

initializationTimeout

Integer

60

初期化子関数の実行のタイムアウト時間。 単位は秒です。 デフォルト値: 3。 有効な値:1 から 300。 期間が終了すると、イニシャライザ関数の実行は終了する。

initializer

String

index.handler

初期化子関数のハンドラー。 値の形式はプログラミング言語によって異なります。 詳細については、「Initializer関数」をご参照ください。

caPort

Integer

9000

HTTPサーバーがカスタムランタイムまたはカスタムコンテナランタイムをリッスンするポート。

リクエストの例

PUT /services/service_name/functions/function_name HTTP/1.1
Host:fc-ram.aliyuncs.com
If-Match:e19d5cd5af0378da05f63f891c7467af
X-Fc-Code-Checksum:543402527838814****
Content-Type:application/json

{
  "code" : {
    "ossBucketName" : "demo-bucket",
    "ossObjectName" : "demo-key",
    "zipFile" : "cHJpbnQoImhlbGxvIHdvcmxkIikK"
  },
  "customContainerConfig" : {
    "args" : "[\"-arg1\", \"value1\"]",
    "command" : "[\"/code/myserver\"]",
    "image" : "registry-vpc.cn-hangzhou.aliyuncs.com/fc-demo/helloworld:v1beta1",
    "accelerationType" : "Default",
    "instanceID" : "cri-xxxxxxxx"
  },
  "layers" : [ "02f81d283888f5ec63442a88fe82b260#Layer-name#1" ],
  "description" : "test_description",
  "handler" : "index.handler",
  "memorySize" : 512,
  "runtime" : "python3",
  "timeout" : "60",
  "initializationTimeout" : 60,
  "initializer" : "index.handler",
  "caPort" : 9000
}

正常に処理された場合のレスポンス例

JSON 形式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "codeChecksum" : "2825179536350****",
  "codeSize" : 421,
  "createdTime" : "2020-04-01T08:14:58Z",
  "customContainerConfig" : {
    "args" : "[\"-arg1\", \"value1\"]",
    "command" : "[\"/code/myserver\"]",
    "image" : "registry-vpc.cn-hangzhou.aliyuncs.com/fc-demo/helloworld:v1beta1",
    "accelerationType" : "Default",
    "instanceID" : "cri-xxxxxxxx"
  },
  "layers" : [ "02f81d283888f5ec63442a88fe82****#Layer-name#1" ],
  "description" : "test_description",
  "functionId" : "e68905d5-f81c-4238-a5e4-***",
  "functionName" : "function_name",
  "handler" : "index.handler",
  "memorySize" : 512,
  "runtime" : "python3",
  "timeout" : 10,
  "initializationTimeout" : 60,
  "initializer" : "index.handler",
  "caPort" : 9000
}

エラーコード

エラーコードの一覧は、「API エラーセンター」をご参照ください。