修改函数代码
功能介绍
修改指定的函数的代码。
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的值)。 |
Content-Type |
是 |
String |
消息体的类型(格式) |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
code_type |
是 |
String |
函数代码类型,取值有5种。 inline: UI在线编辑代码。 zip: 函数代码为zip包。 obs: 函数代码来源于obs存储。 jar: 函数代码为jar包,主要针对Java函数。修改自定义镜像函数镜像配置请参考:修改自定义镜像类型函数的镜像配置。 枚举值:
|
code_url |
否 |
String |
当code_type为obs时,该值为函数代码包在OBS上的地址,code_type为其他值时,该字段为空。 |
code_filename |
否 |
String |
函数的文件名,当code_type为jar/zip时必须提供该字段,inline和obs不需要提供。 |
func_code |
是 |
FuncCode object |
函数代码。 |
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版本。 Python3.10: Python语言3.10版本。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版本。Node.js16.17: Nodejs语言16.17版本。Node.js18.15: Nodejs语言18.15版本。C#(.NET Core 2.1): C#语言2.1版本。C#(.NET Core 3.1): C#语言3.1版本。Custom: 自定义运行时。PHP7.3: Php语言7.3版本。Cangjie1.0:仓颉语言1.0版本。http: HTTP函数。Custom Image: 自定义镜像函数。 枚举值:
|
code_type |
String |
函数代码类型,取值有5种。 inline: UI在线编辑代码。 zip: 函数代码为zip包。 obs: 函数代码来源于obs存储。 jar: 函数代码为jar包,主要针对Java函数。修改自定义镜像函数镜像配置请参考:修改自定义镜像类型函数的镜像配置。 枚举值:
|
code_url |
String |
当code_type为obs时,该值为函数代码包在OBS上的地址,code_type为其他值时,该字段为空。 |
code_filename |
String |
函数的文件名,当code_type为jar/zip时必须提供该字段,inline和obs不需要提供。 |
code_size |
Long |
函数大小,单位:字节。 |
digest |
String |
函数代码SHA512 hash值,用于判断函数是否变化。 |
last_modified |
String |
函数最后一次更新时间。 |
func_code |
FuncCode object |
函数代码。 |
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 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
依赖包版本ID。 |
owner |
String |
依赖包属主的domainId。 |
link |
String |
依赖包在OBS上的链接。 |
runtime |
String |
FunctionGraph函数的执行环境 Python2.7: Python语言2.7版本。 Python3.6: Pyton语言3.6版本。Python3.9: Python语言3.9版本。 Python3.10: Python语言3.10版本。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版本。Node.js16.17: Nodejs语言16.17版本。Node.js18.15: Nodejs语言18.15版本。C#(.NET Core 2.1): C#语言2.1版本。C#(.NET Core 3.1): C#语言3.1版本。Custom: 自定义运行时。PHP7.3: Php语言7.3版本。Cangjie1.0:仓颉语言1.0版本。http: HTTP函数。Custom Image: 自定义镜像函数。 枚举值:
|
etag |
String |
依赖包的md5值 |
size |
Long |
依赖包大小。 |
name |
String |
依赖包名称。 |
description |
String |
依赖包描述。 |
file_name |
String |
依赖包文件名,如果创建方式为zip时。 |
version |
Long |
依赖包版本编号。 |
dep_id |
String |
依赖包ID |
last_modified |
Integer |
函数最后一次更新时间。 |
状态码: 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 |
错误信息 |
请求示例
- 以inline方式修改指定函数代码。
PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/code { "code_filename" : "index.zip", "code_type" : "inline", "func_code" : { "file" : "UEsDBAoAAAAIAPQ1M1gNImPLrAAAAAEBAAAIAAAAaW5kZXgucHlNjtEOgjAMRd/5igVfxDAlxhjDo0S/wB+YrMgMdMvWGYnh390wEfrU3nvb0xXjG85qLRU+Sk8NP0UhUb3RltjTaUwkNKwVKDuwbA0vQMrDAhK8KSsTFsoCeYvsMw2xUkeCvKu0hLRk+6LIZ0u5s3BwPFwwUEEG/yo6B4vEXcshyBG+lb437kfNFpEWhATrQmqGTkYVH0Pit8FEdCqM6VQtSGncxYPpPz5O3fgFUEsBAh4DCgAAAAgA9DUzWA0iY8usAAAAAQEAAAgAAAAAAAAAAAAAAPMCAAAAAGluZGV4LnB5UEsFBgAAAAABAAEANgAAANIAAAAAAA==" } }
- 以zip方式修改指定函数代码。
PUT https://{Endpoint}/v2/{project_id}/fgs/functions/{function_urn}/code { "code_filename" : "index.zip", "code_type" : "zip", "func_code" : { "file" : "UEsDBAoAAAAIAPQ1M1gNImPLrAAAAAEBAAAIAAAAaW5kZXgucHlNjtEOgjAMRd/5igVfxDAlxhjDo0S/wB+YrMgMdMvWGYnh390wEfrU3nvb0xXjG85qLRU+Sk8NP0UhUb3RltjTaUwkNKwVKDuwbA0vQMrDAhK8KSsTFsoCeYvsMw2xUkeCvKu0hLRk+6LIZ0u5s3BwPFwwUEEG/yo6B4vEXcshyBG+lb437kfNFpEWhATrQmqGTkYVH0Pit8FEdCqM6VQtSGncxYPpPz5O3fgFUEsBAh4DCgAAAAgA9DUzWA0iY8usAAAAAQEAAAgAAAAAAAAAAAAAAPMCAAAAAGluZGV4LnB5UEsFBgAAAAABAAEANgAAANIAAAAAAA==" } }
响应示例
状态码: 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 服务内部错误。 |
错误码
请参见错误码。