调用InvokeFunction接口执行函数。
请求头
该接口无特殊请求头,关于公共请求头信息,请参见公共参数。
名称 | 类型 | 是否必选 | 示例 | 描述 |
---|---|---|---|---|
X-Fc-Invocation-Type | String | 否 | Sync | 调用方式。取值说明如下:
|
X-Fc-Log-Type | String | 否 | None | 请求返回日志。
|
X-Fc-Stateful-Async-Invocation-Id | String | 否 | g6u*****iyvhd3jk8s6bhj0hh | 异步任务ID。您需要事先开启异步任务。 说明 建议您在使用SDK调用时设置与业务相关的ID,方便对相关执行进行后续操作。例如,一个视频处理函数可以使用视频文件名作为调用ID,通过该ID可以查看视频是否处理完成或终止视频的处理。该ID的命名规则只能以英文大小写字母或下划线(_)开头,由英文大小写字母、数字(0-9)、下划线(_)及短划线(-)组成,不超过128个字符。如果您未设置异步调用的ID,系统则会自动生成一个ID。 |
请求语法
POST /services/{serviceName.qualifier}/functions/{functionName} HTTP/1.1
请求参数
名称 | 类型 | 位置 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|---|
serviceName | String | Path | 是 | service_name | 服务的名称。 |
qualifier | String | Path | 否 | LATEST | 服务的版本或别名。 |
functionName | String | Path | 是 | function_name | 函数的名称。 |
String | Body | 是 | {"key1": "value1"} | 函数的事件,类型为二进制Byte数组。函数计算将Event传递给用户函数处理。 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
X-Fc-Error-Type | String | UnhandledInvocationError | 调用函数的错误类型。 |
X-Fc-Log-Result | String | demo log result | 返回日志结果。 |
X-Fc-Code-Checksum | String | 5697641582914695457 | 函数代码包的CRC-64值。 |
X-Fc-Stateful-Async-Invocation-Id | String | g6u*****iyvhd3jk8s6bhj0hh | 异步任务ID。您需要事先开启异步任务。 说明 建议您在使用SDK调用时设置与业务相关的ID,方便对相关执行进行后续操作。例如,一个视频处理函数可以使用视频文件名作为调用ID,通过该ID可以查看视频是否处理完成或终止视频的处理。该ID的命名规则只能以英文大小写字母或下划线(_)开头,由英文大小写字母、数字(0-9)、下划线(_)及短划线(-)组成,不超过128个字符。如果您未设置异步调用的ID时,系统则会自动生成一个ID。 |
X-Fc-Instance-Id | String | 7c43576b-48b1-4c3a-86e5-dcb01872**** | 函数实例的ID。 |
X-Fc-Request-Id | String | dab25e58-9356-4e3f-97d6-f044c4**** | 函数调用的请求ID。 |
X-Fc-Max-Memory-Usage | String | 9.2 | 函数执行消耗的内存,单位MB。 |
X-Fc-Invocation-Duration | String | 10 | 函数执行消耗的时长,单位毫秒。 |
X-Fc-Invocation-Service-Version | String | LATEST | 调用函数的版本或者别名。 |
String | hello world | 调取函数返回的结果,函数具体的返回内容由您定义。 |
示例
请求示例
POST /services/{serviceName.qualifier}/functions/function_name HTTP/1.1
Host:fc-ram.aliyuncs.com
X-Fc-Invocation-Type:Sync
X-Fc-Log-Type:None
X-Fc-Stateful-Async-Invocation-Id:g6u*****iyvhd3jk8s6bhj0hh
Content-Type:application/json
{"key1": "value1"}
正常返回示例
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"result" : "hello world"
}