修改函数代码
功能介绍
修改指定的函数的代码。
URI
PUT /v2/{project_id}/fgs/functions/{function_urn}/code
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
project_id | 是 | String | 租户项目 ID,获取方式请参见获取项目ID。 |
function_urn | 是 | String | 函数的URN,详细解释见FunctionGraph函数模型的描述。 |
请求参数
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
X-Auth-Token | 是 | String | 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
code_type | 是 | String | 函数代码类型,取值有4种。 inline: UI在线编辑代码。 zip: 函数代码为zip包。 obs: 函数代码来源于obs存储。 jar: 函数代码为jar包,主要针对Java函数。 枚举值:
|
code_url | 否 | String | 当CodeType为obs时,该值为函数代码包在OBS上的地址,CodeType为其他值时,该字段为空。 |
code_filename | 否 | String | 函数的文件名,当CodeType为jar/zip时必须提供该字段,inline和obs不需要提供。 |
func_code | 是 | FuncCode object | FuncCode结构返回体。 |
depend_list | 否 | Array of strings | 依赖id列表 |
depend_version_list | 否 | Array of strings | 依赖版本id列表 |
响应参数
状态码: 200
参数 | 参数类型 | 描述 |
|---|---|---|
func_urn | String | 函数的URN(Uniform Resource Name),唯一标识函数。 |
func_name | String | 函数名称。 |
domain_id | String | 域名id。 |
runtime | String | FunctionGraph函数的执行环境 Python2.7: Python语言2.7版本。 Python3.6: Pyton语言3.6版本。 Python3.9: Python语言3.9版本。 Go1.8: Go语言1.8版本。 Go1.x: Go语言1.x版本。 Java8: Java语言8版本。 Java11: Java语言11版本。 Node.js6.10: Nodejs语言6.10版本。 Node.js8.10: Nodejs语言8.10版本。 Node.js10.16: Nodejs语言10.16版本。 Node.js12.13: Nodejs语言12.13版本。 Node.js14.18: Nodejs语言14.18版本。 C#(.NET Core 2.0): C#语言2.0版本。 C#(.NET Core 2.1): C#语言2.1版本。 C#(.NET Core 3.1): C#语言3.1版本。 Custom: 自定义运行时。 PHP7.3: Php语言7.3版本。 http: HTTP函数。 枚举值:
|
code_type | String | 函数代码类型,取值有4种。 inline: UI在线编辑代码。 zip: 函数代码为zip包。 obs: 函数代码来源于obs存储。 jar: 函数代码为jar包,主要针对Java函数。 枚举值:
|
code_url | String | 当CodeType为obs时,该值为函数代码包在OBS上的地址,CodeType为其他值时,该字段为空。 |
code_filename | String | 函数的文件名,当CodeType为jar/zip时必须提供该字段,inline和obs不需要提供。 |
code_size | Long | 函数大小,单位:字节。 |
digest | String | 函数代码SHA512 hash值,用于判断函数是否变化。 |
last_modified | String | 函数最后一次更新时间。 |
func_code | FuncCode object | FuncCode结构返回体。 |
depend_list | Array of strings | 依赖id列表 |
depend_version_list | Array of strings | 依赖版本id列表 |
strategy_config | StrategyConfig object | 函数策略配置。 |
dependencies | Array of Dependency objects | 函数依赖代码包列表。 |
参数 | 参数类型 | 描述 |
|---|---|---|
concurrency | Integer | 单函数最大实例数,v1取值0和-1,v2取值-1到1000 -1代表该函数实例数无限制 0代表该函数被禁用 |
concurrent_num | Integer | 单实例最大并发数,v2版本才支持,取值-1到1000 |
参数 | 参数类型 | 描述 |
|---|---|---|
owner | String | 依赖包属主的domainId。 |
link | String | 依赖包在OBS上的链接。 |
runtime | String | FunctionGraph函数的执行环境 Python2.7: Python语言2.7版本。 Python3.6: Pyton语言3.6版本。 Python3.9: Python语言3.9版本。 Go1.8: Go语言1.8版本。 Go1.x: Go语言1.x版本。 Java8: Java语言8版本。 Java11: Java语言11版本。 Node.js6.10: Nodejs语言6.10版本。 Node.js8.10: Nodejs语言8.10版本。 Node.js10.16: Nodejs语言10.16版本。 Node.js12.13: Nodejs语言12.13版本。 Node.js14.18: Nodejs语言14.18版本。 C#(.NET Core 2.0): C#语言2.0版本。 C#(.NET Core 2.1): C#语言2.1版本。 C#(.NET Core 3.1): C#语言3.1版本。 Custom: 自定义运行时。 PHP7.3: Php语言7.3版本。 http: HTTP函数。 枚举值:
|
etag | String | 依赖包的md5值 |
size | Long | 依赖包大小。 |
name | String | 依赖包名称。 |
description | String | 依赖包描述。 |
file_name | String | 依赖包文件名,如果创建方式为zip时。 |
状态码: 400
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 错误码 |
error_msg | String | 错误信息 |
状态码: 401
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 错误码 |
error_msg | String | 错误信息 |
状态码: 403
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 错误码 |
error_msg | String | 错误信息 |
状态码: 404
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 错误码 |
error_msg | String | 错误信息 |
状态码: 500
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 错误码 |
error_msg | String | 错误信息 |
请求示例
修改指定函数代码。
PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/code
{
"code_filename" : "index.zip",
"code_type" : "inline",
"func_code" : {
"file" : "UEsDBAoAAAAIACBkLlV2+vGXqQAAAPgAAAAIAAAAaW5kZXguanNdjj0OgkAQhXtPMYUJS0JIaDX2xkILL8AKAxKHHdydVQzh7i5IQZzqZb68H+w7tuLSuzYloYUDVN4U0rABhS80kkDBRrCfhCa66eIRw7CBcIQC7ILF4tM3FlXELor3Mwsmx4Qpca04xLMTo1tU8YoLoLU8dRpPtP6zl85LAPkRiRjebKmEFp3TNWZZtoPtcLpezqkT25i6qT6/sfGYLzHLVDU3JPA/YfwCUEsBAh4DCgAAAAgAIGQuVXb68ZepAAAA+AAAAAgAAAAAAAAAAAAAAPMCAAAAAGluZGV4LmpzUEsFBgAAAAABAAEANgAAAM8AAAAAAA=="
}
} 响应示例
状态码: 200
OK
{
"func_urn" : "urn:fss:xxxxxxxxxxxx:7aad83af3e8d42e99ac194e8419e2c9b:function:default:test:latest",
"func_name" : "test",
"domain_id" : "14ee2e3501124efcbca7998baa24xxxx",
"runtime" : "Node.js6.10",
"code_type" : "inline",
"code_filename" : "index.js",
"code_size" : 245,
"digest" : "39d51ae334ffb239037e194159f4cc9cec31086719aa73db7d0a608343121a290f7115693e008bd01cb12b99a803856e83aa96173b26c528c41cfed18267e08f",
"last_modified" : "2019-10-31 11:37:58",
"func_code" : {
"file" : "aW1wb3J0IGpzb24KZGVmIGhhbmRsZXIoZXZlbnQsIGNvbnRleHQpOgogICAgb3V0cHV0ID0gJ0hlbGxvIE1zZyBmb3IgbW9kaWZ5OiAnICsganNvbi5kdW1wcyhldmVudCkKICAgIGFrID0gY29udGV4dC5nZXRBY2Nlc3NLZXkoKQogICAgc2sgPSBjb250ZXh0LmdldFNlY3JldEtleSgpCiAgICB0b2tlbiA9IGNvbnRleHQuZ2V0VG9rZW4oKQogICAgcHJpbnQgJ2FrOicgKyBhawogICAgcHJpbnQgJ3NrOicgKyBzawogICAgcHJpbnQgJ3Rva2VuOicgKyB0b2tlbgogICAgcmV0dXJuIG91dHB1dAo+C0NLTqLwKImNCTgBMSn5SC+UbkysuKp1Bj7JQqxds+5p7La/ew4RBTp8IusZ/k2qmqvCDdoBY0ywYCl+RgctnLbTS6hLLj9sNyKoVXiXb1BLAQIeAwoAAAAIAAhYOU8ssPQsgwAAALYAAAAIAAAAAAAAAAAAAADzAgAAAABpbmRleC5weVBLBQYAAAAAAQABADYAAACpAAAAAAA=",
"link" : ""
},
"strategy_config" : {
"concurrency" : -1
}
} 状态码: 404
Not Found 找不到资源。
{
"error_code" : "FSS.1052",
"error_msg" : "Not found the function version"
} 状态码
状态码 | 描述 |
|---|---|
200 | OK |
400 | Bad Request 请求错误。 |
401 | Unauthorized 鉴权失败。 |
403 | Forbidden 没有操作权限。 |
404 | Not Found 找不到资源。 |
500 | Internal Server Error 服务内部错误。 |
错误码
请参见错误码。

